后台返回的数组为:["5", "1", "3", "2", "1",]
页面要实现对应数量的黄色星星
(例如:5的话,五颗黄色的星星,默认是五颗灰色的星星,此处图片就是一个示意,希望大家不要误解):
默认item里的数据:
stars:[
{starsUrl:"./img/net_more/star_off.png"},
{starsUrl:"./img/net_more/star_off.png"},
{starsUrl:"./img/net_more/star_off.png"},
{starsUrl:"./img/net_more/star_off.png"},
{starsUrl:"./img/net_more/star_off.png"},
],
黄色星星的路径:
{starsUrl:"./img/net_more/star_on.png"},
目前页面代码是这样的:
<li class="buy_will">
购买意愿
<span class="buy_stars" >
<img class="stars" v-for="star in item.stars" :src="star.starsUrl" alt="1">
</span>
</li>
那么问题来了,该如何根据数组里面的数字来替换称黄色的星星呢?
li是v-for="item in items"遍历出来的,stars是items对象里的一个数组对象
按照你的写法需要更换stars数组的值,但是你不是就一个评分,所以一个数组肯定是不行的,所以这个思路并不好
换个思路,就两种图片,黄色的总在前面,灰色的总在后面,那可以这么实现