Vue实现商品详情页的评价列表功能


Posted in Javascript onSeptember 04, 2019

本篇我们来实现商品详情页的评价列表。

Vue实现商品详情页的评价列表功能 

必要的数据

这里咱们举一个数据的例子,明明白白地了解这些数据是如何绑定到模板中的。

数据来自于Foods父组件,当我们选中商品,跳转到商品详情页,那么就需要依赖父组件中的商品数据,在商品详情页面展示评论,当然也可能没有如下“rating”数据。那我们在后面的模板中,就不展示对应的html结构。

{
            "id": 96985579,
            "name": "麦辣鸡翅2块",
            "min_price": 11,
            "praise_num": 22,
            "praise_content": "赞22",
            "tread_num": 0,
            "praise_num_new": 22,
            "unit": "例",
            "description": "",
            "picture": "http://p0.meituan.net/xianfu/38bbfa3f955cbce3330f1cb6818d0ce6216794.png.webp",
            "month_saled": 948,
            "month_saled_content": "月售948",
            "status": 3,
            "status_description": "非可售时间",
            "product_label_picture": "http://p1.meituan.net/aichequan/04789347d755465713550540942265d36475.png",
            "rating": {
              "comment_count": 4,
              "title": "外卖评价",
              "snd_title": "4条评论",
              "praise_friends": "",
              "like_ratio_desc": "好评度",
              "like_ratio": "100%",
              "filter_type": 1,
              "comment_list": [
                {
                  "user_icon": "https://img.meituan.net/avatar/71ef89fa000e783d5b8d86c2767a9d28195580.jpg",
                  "user_name": "ejX309524666",
                  "comment_time": "2017.08.31",
                  "comment_unix_time": 1504161290,
                  "comment_content": "#奶油坚果酱中套餐#不好吃。还是奥尔良,麦辣鸡腿那些最经典的汉堡好吃。薯条软得不能再软了。我备注了可乐换芬达也没有换。#麦辣鸡翅2块#就还好,里面的肉挺嫩的,很入味。"
                }, {
                  "user_icon": "https://img.meituan.net/avatar/6571c42526237b0118f437418e989d1187445.jpg",
                  "user_name": "EAG789830055",
                  "comment_time": "2017.08.18",
                  "comment_unix_time": 1503030166,
                  "comment_content": "#麦辣鸡翅2块#送错"
                }
              ]
            }
          }

Food组件添加商品评价结构

好,现在让我们将评价结构搭出来,并且绑定对应的数据。

<templete>
  <transtition name="food-detail">
    <div class="food" v-show="showFlag" ref="foodView">
      <div class="food-wrapper">
        <div class="food-content"></div>
         <!-- 商品评价列表结构,数据的绑定渲染 -->
        <div class="rating-wrapper">
           <div class="rating-title">
            <div class="like-ratio" v-if="food.rating">
             <span class="title">{{food.rating.title}}</span>
             <span class="ratio">
              (
              {{food.rating.like_ratio_desc}}
              <i>{{food.rating.like_ratio}}</i>
              )
             </span>
            </div>
            <div class="snd-title" v-if="food.rating">
             <span class="text">{{food.rating.snd_title}}</span>
             <span class="icon icon-keyboard_arrow_right"></span>
            </div>
           </div>
           <ul class="rating-content" v-if="food.rating">
            <li v-for="comment in food.rating.comment_list" class="comment-item">
             <div class="comment-header">
              <img :src="comment.user_icon" v-if="comment.user_icon">
              <img src="./anonymity.png" v-if="!comment.user_icon">
             </div>
             <div class="comment-main">
              <div class="user">{{comment.user_name}}</div>
              <div class="time">{{comment.comment_time}}</div>
              <div class="content">{{comment.comment_content}}</div>
             </div>
            </li>
           </ul>
        </div>
      </div>
    </div>
  </transition>
</templete>

导入,注册组件

<script>
  // 导入BScroll
  import BScroll from "better-scroll";
  // 导入Cartcontrol
  import Cartcontrol from "components/Cartcontrol/Cartcontrol";
  // 导入Vue
  import Vue from "vue";
  
  export default {
   data() {
    return {
     showFlag: false
    };
   },
    //接收来自Goods父组件中选中的food;
   props: {
    food: {
     type: Object
    }
   },
   methods: {
    //这里是上篇我们实现商品详情页的方法
   },
   components: {
    Cartcontrol,
    BScroll
   }
};
</script>

到这里我们就完成了商品详情页面的评论列表,下篇我们来实现商品评价栏目。

总结

以上所述是小编给大家介绍的Vue实现商品详情页的评价列表功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Javascript 相关文章推荐
jQuery学习笔记 操作jQuery对象 CSS处理
Sep 19 Javascript
Extjs显示从数据库取出时间转换JSON后的出现问题
Nov 20 Javascript
使用命令对象代替switch语句的写法示例
Feb 28 Javascript
基于JavaScript实现表单密码的隐藏和显示出来
Mar 02 Javascript
Node.js如何自动审核团队的代码
Jul 20 Javascript
canvas实现手机端用来上传用户头像的代码
Oct 20 Javascript
Bootstrap 3.x打印预览背景色与文字显示异常的解决
Nov 06 Javascript
jQuery基本筛选选择器实例代码
Feb 06 Javascript
详解Node项目部署到云服务器上
Jul 12 Javascript
vue实现某元素吸顶或固定位置显示(监听滚动事件)
Dec 13 Javascript
Bootstrap实现模态框效果
Sep 30 Javascript
jQuery实现王者荣耀手风琴效果
Jan 17 jQuery
Layui 数据表格批量删除和多条件搜索的实例
Sep 04 #Javascript
解决layui表格的表头不滚动的问题
Sep 04 #Javascript
解决layui数据表格table的横向滚动条显示问题
Sep 04 #Javascript
微信小程序tab切换可滑动切换导航栏跟随滚动实现代码
Sep 04 #Javascript
微信小程序JS加载esmap地图的实例详解
Sep 04 #Javascript
深入浅出vue图片路径的实现
Sep 04 #Javascript
webpack 如何解析代码模块路径的实现
Sep 04 #Javascript
You might like
PHP分页效率终结版(推荐)
2013/07/01 PHP
PHP中source #N问题的解决方法
2014/01/27 PHP
php+mysql实现用户注册登陆的方法
2015/01/03 PHP
php生成与读取excel文件
2016/10/14 PHP
PHP扩展Swoole实现实时异步任务队列示例
2019/04/13 PHP
Laravel + Elasticsearch 实现中文搜索的方法
2020/02/02 PHP
JavaScript 异步调用框架 (Part 4 - 链式调用)
2009/08/04 Javascript
关于JavaScript命名空间的一些心得
2014/06/07 Javascript
JQuery实现展开关闭层的方法
2015/02/17 Javascript
jQuery实现div拖拽效果实例分析
2016/02/20 Javascript
js仿微博动态栏功能
2017/02/22 Javascript
详解webpack loader和plugin编写
2018/10/12 Javascript
基于Express框架使用POST传递Form数据
2019/08/10 Javascript
vue.js iview打包上线后字体图标不显示解决办法
2020/01/20 Javascript
jquery实现拖拽添加元素功能
2020/12/01 jQuery
JS+JQuery实现无缝连接轮播图
2020/12/30 jQuery
[07:31]DOTA2卡尔工作室 英雄介绍主宰篇
2013/06/25 DOTA
[01:25]2015国际邀请赛最佳短片奖——斧王《拆塔英雄:天赋异禀》
2015/09/22 DOTA
Python中的map()函数和reduce()函数的用法
2015/04/27 Python
python 寻找优化使成本函数最小的最优解的方法
2017/12/28 Python
tensorflow学习笔记之mnist的卷积神经网络实例
2018/04/15 Python
在windows下使用python进行串口通讯的方法
2019/07/02 Python
Python Django 命名空间模式的实现
2019/08/09 Python
浅谈keras使用中val_acc和acc值不同步的思考
2020/06/18 Python
python中setuptools的作用是什么
2020/06/19 Python
matplotlib绘制多子图共享鼠标光标的方法示例
2021/01/08 Python
python中re模块知识点总结
2021/01/17 Python
详解HTML5 canvas绘图基本使用方法
2018/01/29 HTML / CSS
世界领先的以旅馆为主的在线预订平台:Hostelworld
2016/10/09 全球购物
IFCHIC台湾:欧美国际设计师品牌
2019/05/18 全球购物
工作失误检讨书范文大全
2014/01/13 职场文书
小学生感恩演讲稿
2014/04/25 职场文书
财务部副经理岗位职责范本
2014/06/17 职场文书
实习工作表现评语
2014/12/31 职场文书
爱国主义影片观后感
2015/06/18 职场文书
2016党员干部政治学习心得体会
2016/01/23 职场文书