前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >短视频带货源码,获取购物车中所有商品列表并加载显示

短视频带货源码,获取购物车中所有商品列表并加载显示

原创
作者头像
yunbaokeji柯基
修改2020-09-22 17:48:35
6500
修改2020-09-22 17:48:35
举报
文章被收录于专栏:直播知识

短视频带货源码中,获取购物车中所有商品列表并加载显示的相关代码

代码语言:javascript
复制
<template>
  <div >
    <div v-for="(item,index) in goodslist" :key="index">
      <p>{{item.name}}</p>
    </div>
  </div>
</template>
<script>
  export default{
    data(){
        return {
            goodslist:[]
        } 
    },
    created(){
      this.getGoodsList()
    },
    getGoodsList(){
      //获取store中所有商品的id,拼接出一个 用逗号分隔出的  字符串
      var idArr=[]
      this.$store.state.car.forEach(item=>idArr.push(item.id))
      //如果购物车没有商品则返回,不请求接口,否则报错
      if(idArr.length<=0){
        return
      }
      this.$http.get("/api/goods/getshoplist/"+idArr.join(",")).then(res=>{
        if(res.body.status===0){
          this.goodslist=res.body.list
        }
      })
    }
  }
</script>

store.js

代码语言:javascript
复制
//每次先从本地中读取购物车数据,放到store中
var car = JSON.parse(localStorage.getItem("car") || "[]")
var store=new Vuex.Store({
  state:{
    car:car
  },
    mutations:{
        addToCar(state,goodInfo){
            var flag=false
            //循环商品,如果存在数量相加
            state.car.some(item=>{
                if(item.id==goodInfo.id){
                    item.count+=parseInt(goodInfo.count)
                    flag=true
                    return true
                }
            })
            //如果循环最终还是false,则把商品数据直接push购物车中
            if(!flag){
               state.car.push(goodInfo)
            }
            //当更新car之后,存储到本地
            localstore.setItem("car",JSON.stringfy(state.car))
        }
    }
})

以上就是关于短视频带货源码中,关于获取购物车中所有商品列表并加载显示的相关代码,更多内容欢迎关注之后的文章

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档