uni-app中的硬绑定和硬复制

1. uni-app中的硬绑定和硬复制

  uni-app及vue开发循环创建的input框,value改变一个都随之改变的问题?

c 复制代码
  //数组:
    var a = [1, 2, 3];
    console.log("数组原始a:", a);
    var b = a;
    b.push(4); // b中添加了一个4
    console.log("数组a:", a); // a变成了[1,2,3,4]
    console.log("数组b:", b);
    //对象:
    var obj = {a: 10};
    console.log("对象原始obj:", obj);
    var obj2 = obj;
    obj2.a = 20; // obj2.a改变了,
    console.log("obj:",obj.a); // 20,obj的a跟着改变

  j解决方案循环创建的表格,里面动态生成input,绑定value,结果就是一个框子改变值,其他的也变成的同样的值;

c 复制代码
this.datalist ={
 //这是你循环时页面用到的数据
}
 let obj={};  先创建一个对象
 obj=JSON.parse(JSON.stringify(this.templateData)); //这里深拷贝一下,给obj赋值
 //这里不可以直接obj = this.datalist,不然在你处理obj里面的数据时this.datalist也会一起改变;
 //我们把obj里面需要处理数据处理完之后再对this.datalist赋值,就完美解决了
 this.datalist = obj
c 复制代码
   //数组:
    var a = [1, 2, 3];
    console.log("数组原始a:", a);
    var b = JSON.parse(JSON.stringify(a));
    b.push(4);
    console.log("新数组a:", a);
    console.log("新数组b:", b);
    //对象:
    var obj = {a: 10};
    console.log("对象原始obj:", obj);
    var obj2 = JSON.parse(JSON.stringify(obj));
    obj2.a = 20;
    console.log("新对obj:",obj.a);