html,使用iconfont
<view :class="{starActive:item}" @click="choise(index)"
class="flex-item iconfont" v-for="(item,index) in clickedList">
<view v-if="item" class="starIcon" style="color: #ff8000">

</view>
<view v-else class="starIcon">

</view>
</view>
css
.starActive {
color: #ff8000;
}
js
clickedList: [false, false, false, false, false], //对应星星个数
//点击选择
choise(num) {
let that = this
// num 为点击的星星在数组中的下标
this.clickedList = [false, false, false, false, false];
num = num + 1;
for (let i = 0; i < num; i++) {
this.clickedList[i] = true;
}
}
starIcon(item) {
if (item) {
return ''
} else {
return ''
}
},
效果