赞
踩
目录
为了更好的开发和维护,这里我们把文章评论单独封装到一个组件中来处理。
① 创建 src/views/article/components/article-comment.vue
② 在文章详情页面中加载注册文章评论子组件
③ 在文章详情页面的正文结束后面使用文章评论子组件
步骤:
封装接口
请求获取数据
处理模板
实现:
① 在 api/comment.js
中添加封装请求方法
② 请求获取数据
③ 模板绑定
① 封装文章评论项子组件
② 在文章评论列表组件的内部使用
③ 模版绑定
① 在 api/comment.js
中添加封装两个数据接口
② 然后给评论项中的点赞图标注册点击事件
③ 处理事件处理函数
基本思路:
① 封装数据接口
② 给发布按钮点击事件
③ 事件处理函数
④ 发布成功处理
① 在详情页中使用弹层用来展示文章的回复
② 当点击评论项组件中的回复按钮的时候展示弹层
comment-item.vue
组件中点击回复按钮的时候,对外发布自定义事件发表回复评论按钮 button 组件
① 在 comment-item.vue
组件中点击回复按钮的时候把评论对象给传出来
② 在文章详情组件中接收处理
③ 在详情组件中将 currentComment
传递给 comment-reply.vue
组件
④ 在 comment-reply.vue
组件中声明接收
⑤ 在 comment-reply.vue
组件中展示当前评论,复用之前封装的comment-item组件
基本思路:
回复列表和文章的评论列表几乎是一样的
重用把之前封装的评论列表
弹层组件:
如果初始的条件是 false,则弹层的内容不会渲染
程序运行期间,当条件变为 true 的时候,弹层才渲染了内容
之后切换弹层的展示,弹层只是通过 CSS 控制隐藏和显示
弹层渲染出来以后就只是简单的切换显示和隐藏,里面的内容也不再重新渲染了,所以会导致我们的评论的回复列表不会动态更新了。解决办法就是在每次弹层显示的时候重新渲染组件。v-if是条件渲染, true渲染元素节点, false则不渲染元素节点。
祖先组件:
后代组件:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。