在项目中写一个购物车功能

打印 上一主题 下一主题

主题 2301|帖子 2301|积分 6903

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x
<template>
  <div class="two">
    <div v-for="item in taskPriceList" :key="item.id">
      <input type="radio" value="selectInput" v-model="item.selectF" />
      <p>¥{{item.price}}元</p>
      <div>
        <button @click="delBtn(item.id)">-</button>
        <span class="span">{{item.count}}</span>
        <button @click="addBtn(item.id)">+</button>
      </div>
    </div>
    <p>总共合计:{{totalPrice}}元</p>
  </div>
</template>

<script>
export default {
  name: "ShengMingZQTwo",
  data() {
    return {
      taskPriceList: [
        { id: 1, selectF: "", count: 1, price: 138 },
        { id: 2, selectF: "", count: 2, price: 30 },
        { id: 3, selectF: "", count: 1, price: 450 }
      ]
    };
  },
  computed: {
    totalPrice() {
      let sum = 0;
      this.taskPriceList.forEach(item => {
        if (item.selectF == "selectInput") {
          sum += item.price * item.count;
        }
      });
      return sum;
    }
  },
  methods: {
    addBtn(value) {
      this.taskPriceList.forEach(item => {
        if (value == item.id) {
          item.count++;
          item.selectF = "selectInput";
        }
      });
    },
    delBtn(value) {
      this.taskPriceList.forEach(item => {
        if (value == item.id && item.count > 1) {
          item.count--;
          if (item.count == 1) {
            item.selectF = "";
          }
        }
      });
    }
  }
};
</script>
<style scoped>
.span {
  display: inline-block;
  margin: 0 18px;
}
</style>

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

立聪堂德州十三局店

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表