时间:2021-05-26
本篇我们来实现商品详情页的评价列表。
必要的数据
这里咱们举一个数据的例子,明明白白地了解这些数据是如何绑定到模板中的。
数据来自于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实现商品详情页的评价列表功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
引入在使用vue+vue-router开发SPA的时候,有没有遇到过这样的情况:当我们在列表页和详情页之间切换的时候,如果列表页不做缓存,会导致每次从详情页返回
需求:商品列表页面浏览,进入商品详情,点击返回仍然是之前浏览的位置实现:使用vue的keep-alive的include属性给组件做动态缓存,从详情页返回不变,
vue中,我们所要实现的一个场景就是:1.搜索页面==>到搜索结果页时,搜索结果页面要重新获取数据,2.搜索结果页面==>点击进入详情页==>从详情页返回列表页
自定义列表一、自定义列表功能说明自定义列表功能:除了系统内置固定的栏目页、专题页等列表页面外,用户还可以通过SQL条件生成相应信息列表页面,实现各种信息集合列表
1.列表页:列表页带id跳转到详情页详情页:把id传回到后台就可以获取到数据了2.列表页跳转到详情页并更改详情页的标题列表页:带id和页面标题的typeid跳转