ymy 2 vuotta sitten
vanhempi
säilyke
d2259bdd00
1 muutettua tiedostoa jossa 49 lisäystä ja 0 poistoa
  1. 49 0
      src/views/demo/index.vue

+ 49 - 0
src/views/demo/index.vue

@@ -41,6 +41,55 @@ export default class DemoIndex extends Vue {
       (this as any).$router.push('/demo/dialog')
     }
   }]
+  arr =[
+    {
+      title:'尺寸',
+      field:'a',
+      data:['a1','a2','a3']
+    },
+    {
+      title:'颜色',
+      field:'b',
+      data:['b1','b2','b3']
+    },
+    {
+      title:'规格',
+      field:'c',
+      data:['c1','c2','c3']
+    }
+  ]
+
+  created(){
+    this.forFun(this.arr[0],0)
+  }
+
+  forFun(data:any,i:number,v?:any){
+    if(data.data){
+      let d:Array<any>=[];
+      data.data.forEach((item:any) => {
+        if(i == 0){ //第一次循环
+          let obj:any={}
+          obj[data.field] = item
+          d.push(obj);
+        }else{
+          v.forEach((ele:any) => {
+            let obj:any={};
+            obj = (this as any).$lodash.clone(ele);
+            obj[data.field] = item
+            d.push(obj);
+          });
+        }
+      });
+      i++
+      if(this.arr[i]){
+        this.forFun(this.arr[i],i,d);
+      }
+      else{
+        console.log('最后结果:',d)
+      }
+    }
+    
+  }
 }
 </script>