vue suk规则

这段代码展示了如何在 Vue.js 应用中使用 `el-table` 组件来呈现数据,并利用 `cartesianProductOf` 方法生成笛卡尔积。`initDate` 方法初始化数据,`cartesianProductOf` 函数用于计算多个数组的笛卡尔积,生成表格展示的组合。博客主要探讨了前端开发中的数据处理和组件渲染。
摘要由CSDN通过智能技术生成
<template>
  <div class="home">
    <el-table style="width: 100%" border :data="tableData">
      <el-table-column
        prop="name"
        :label="item"
        width="180"
        v-for="(item, index) in arrName"
        :key="index"
      >
        <template slot-scope="scope">
          <p>{{ scope.row[index].name }}</p>
        </template>
      </el-table-column>
      <el-table-column prop="name" label="123" width="180">
        <template slot-scope="scope"> </template>
      </el-table-column>
    </el-table>
  </div>
</template>
<script>
export default {
  data() {
    return {
      arrName: [],
      tableData: [],
      list: [
        {
          goodsPrice: "0", //商品价格
          marketPrice: "0", //市场价格
          goodsStock: "0", //库存
          list:[],
          seap:''
        },
      ],
    };
  },
  created() {
    this.initDate();
  },
  methods: {
   
    initDate() {
      let list = [
        { name: "规格名1", specification: [{ name: "冰" }, { name: "热" }] },
        {
          name: "规格名2",
          specification: [{ name: "全糖" }, { name: "半塘" }],
        },
        {
          name: "规格名3",
          specification: [
            { name: "半甜" },
            { name: "很甜" },
            { name: "一点点甜" },
          ],
        },
      ];

      let arr = list.map((item) => item.specification);
      this.arrName = list.map((item) => item.name);
      let allArr = this.cartesianProductOf(...arr);
      this.tableData = allArr;
      console.log("allArrallArrallArr", allArr, "arrName", this.arrName);
      // 规则名
    },
    cartesianProductOf() {
      let params = {
        goodsPrice: "0", //商品价格
        marketPrice: "0", //市场价格
        goodsStock: "0", //库存
      };
      return Array.prototype.reduce.call(
        arguments,
        function (a, b) {
          var ret = [];
          a.forEach(function (a) {
            b.forEach(function (b) {
              ret.push(a.concat([b]));
            });
          });
          console.log(ret,99999)
          return ret;
        },
        [[]]
      );
    },
  },

};
</script>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值