vue实现商品规格选择功能

 更新时间:2022年04月13日 14:28:58   作者:我是来写bug的吧  
这篇文章主要为大家详细介绍了vue实现商品规格选择,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了vue实现商品规格选择的具体代码,供大家参考,具体内容如下

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

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,则选项设为不可选,首次进入页面的时候也需要调用该方法,将缺货的规格也一并设置为不可选。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • vue实现的微信机器人聊天功能案例【附源码下载】

    vue实现的微信机器人聊天功能案例【附源码下载】

    这篇文章主要介绍了vue实现的微信机器人聊天功能,结合实例形式分析了基于vue.js的微信机器人聊天相关界面布局、ajax交互等操作技巧,并附带源码供读者下载参考,需要的朋友可以参考下
    2019-02-02
  • 关于vue自适应布局(各种浏览器,分辨率)的示例代码

    关于vue自适应布局(各种浏览器,分辨率)的示例代码

    这篇文章主要介绍了vue自适应布局(各种浏览器,分辨率),主要使用了flex布局的flex:1属性和自适应的css+vh+百分比这种方式,开局设置overflow:hidden,主体main部分要设置:overflow:auto,需要的朋友可以参考下
    2022-09-09
  • Vue自定义指令实现卡片翻转功能

    Vue自定义指令实现卡片翻转功能

    这篇文章主要给大家介绍了Vue自定义指令实现卡片翻转功能的代码示例,文章通过代码示例讲解的非常详细,对大家的学习或工作有一定的参帮助,需要的朋友可以参考下
    2023-11-11
  • vue 不使用select实现下拉框功能(推荐)

    vue 不使用select实现下拉框功能(推荐)

    这篇文章主要介绍了vue 不使用select实现下拉框功能,在文章给大家提到了vue select 组件的使用与禁用,需要的朋友可以参考下
    2018-05-05
  • vue数字金额动态变化功能实现方法详解

    vue数字金额动态变化功能实现方法详解

    这篇文章主要介绍了vue实现数字金额动态变化效果,数字动态变化是我们在前端开发中经常需要做的效果,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习吧
    2022-09-09
  • vue使用stompjs实现mqtt消息推送通知

    vue使用stompjs实现mqtt消息推送通知

    这篇文章主要为大家详细介绍了vue中使用stompjs实现mqtt消息推送通知,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-06-06
  • 基于vue-cli搭建多模块且各模块独立打包的项目

    基于vue-cli搭建多模块且各模块独立打包的项目

    这篇文章主要介绍了基于vue-cli搭建多模块且各模块独立打包的项目,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-06-06
  • Vue项目部署到jenkins的实现

    Vue项目部署到jenkins的实现

    本文主要介绍了Vue项目部署到jenkins的实现,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-02-02
  • 详解为什么Vue中不要用index作为key(diff算法)

    详解为什么Vue中不要用index作为key(diff算法)

    这篇文章主要介绍了详解为什么Vue中不要用index作为key(diff算法),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-04-04
  • vue一个页面实现音乐播放器的示例

    vue一个页面实现音乐播放器的示例

    这篇文章主要介绍了vue一个页面实现音乐播放器的示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-02-02

最新评论