vue商品规格选择

软件发布|下载排行|最新软件

当前位置:首页IT学院IT技术

vue商品规格选择

我是来写bug的吧   2022-05-28 我要评论

动手之前要先确定自己的商品数据结构,下面是我的商品数据结构

dataInfo: {
        attr: [
          {
            attr_name: "码数",
            attr_value: [{attr: "40"}, {attr: "50"}],
            attr_values: ["40", "50"],
          },
          {
            attr_name: "颜色",
            attr_value: [{attr: "红色"}, {attr: "蓝色"}],
            attr_values: ["红色", "蓝色"],
          },
        ],
        sku: [
            {
                sku: "40,红色",
                stock: 100,
                price: "4038.08"
            },
            {
                sku: "50,红色",
                stock: 100,
                price: "4038.08"
            },
            {
                sku: "40,蓝色",
                stock: 100,
                price: "4038.08"
            },
            {
                sku: "50,蓝色",
                stock: 100,
                price: "4038.08"
            },
        ],
        stock: 326,
        price: "4038.08",
},

首先先根据数据结构,将商品信息渲染到页面上

<div
        class="product-delcom"
        v-for="(ProductItem, n) in dataInfo.attr"
        :key="n"
      >
        <p>{{ ProductItem.attr_name }}</p>
        <ul class="product-footerlist clearfix">
          <li
            v-for="(oItem, index) in ProductItem.attr_value"
            :key="index"
            @click="specificationBtn(oItem.attr, n, $event, index)"
            :class="[
              oItem.isShow ? '' : 'noneActive',
              subIndex[n] == index ? 'productActive' : '',
            ]"
          >
            {{ oItem.attr }}
          </li>
        </ul>
</div>

然后通过点击规格将规格字符串在sku数组里遍历,找到对应的库存;并判断哪些库存为0,如果为0,则选项设为不可选,首次进入页面的时候也需要调用该方法,将缺货的规格也一并设置为不可选。

Copyright 2022 版权所有 软件发布 访问手机版

声明:所有软件和文章来自软件开发商或者作者 如有异议 请与本站联系 联系我们