笑脸评论功能

该篇文章介绍了如何在Vue项目中使用模板和指令(v-if/v-else)实现一个可交互的评分星图,展示了如何根据评分动态加载图片和处理用户点击事件。
摘要由CSDN通过智能技术生成

效果图片:

代码部分:

<template>
   <div class="scores">
        <ul class="score-ul">
          <li
            class="score-li"
            v-for="(item,index) in scoreList"
            :key="item.score"
            @click="onScoreChange(item, index)">
            <div>
              <img
                v-if="scoreValue==item.score?true:false"
                class="score-star"
                :src="item.img2"
                alt=""/>
              <img
                v-else
                class="score-star"
                :src="item.img1"
                alt=""/>
            </div>
            <div v-if="scoreValue==item.score?true:false">{{item.content}}</div>
            <div v-else class="scoreText">{{item.content</div>
          </li>
        </ul>  
    </div>
</template>
<script>
export default {
  data() {
    this.scoreList = [
      {
        score: 1,
        img1: require("./img/img_hencha_normal.png"),
        img2: require("./img/img_hencha_active.png"),
        content: "很差",
      },
      {
        score: 2,
        img1: require("./img/img_jiaocha_normal.png"),
        img2: require("./img/img_jiaocha_active.png"),
        content: "较差"
      },
      {
        score: 3,
        img1: require("./img/img_manyi_normal.png"),
        img2: require("./img/img_yiban_active.png"),
        content: "一般"
      },
      {
        score: 4,
        img1: require("./img/img_jiaohao_normal.png"),
        img2: require("./img/img_jiaohao_active.png"),
        content: "较好"
      },
      {
        score: 5,
        img1: require("./img/img_manyi_normal.png"),
        img2: require("./img/img_manyi_active.png"),
        content: "满意"
      },
    ];
    return {
      scoreValue: 5,
    };
  },
  methods: {
    onScoreChange(item, index) {
      if (this.isReadonly) {
        return;
      }
      console.log(index);
      this.scoreValue = item.score;
      console.log("this.scoreValue",this.scoreValue);
    },
  },
};
</script>
<style scoped>
.scores {
  text-align: center;
}
.score-ul {
  display: flex;
  justify-content: center;
}
.score-li {
  width: 40px;
  margin: 0 6px;
}
.score-star {
  width: 100%;
}
.scoreText {
  color: rgba(211, 211, 211);
}
</style>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值