向全局数组插入数据后,以前的数据被覆盖,怎么解决
发布于 5 年前 作者 min57 6304 次浏览 来自 问答

app.globalData.selctedgoods.splice(goodstemp[0].list,0, goodstemp[0]);

定义了一个全局数组selctedgoods,长度是3.

splice函数向数组最后插入goodstemp[0]数据


上面这是原始数据,然后第一次插入是正常的


接下来插入的就一直会覆盖之前插入的




我用push等函数都没法,这要怎么解决 啊,谢谢解答

3 回复

我这里测试的是每一次都是不同的数据,第一次插入的是{1,2,3}(这是一个变量,不是三个),第二次插入的是{2,3,4},结果两次插入的都会被覆盖成{2,3,4}。也不是循环插入,是直接用splice(1,0,1)把变量插入到最后一位的。对了,如果我插入单个变量,比如第一次插入{2},第二次插入{3},结果就是对的。难道是数据结构定义的不对吗,

selectedgoods: [

{

list:0,

id: 0,

num: 1,

isshowview:true

},

{

list: 1,

id: 8,

num: 2,

isshowview:true

},

{

list: 2,

id: 2,

num: 1,

isshowview:true

},

],

这是我定义数组,结构必须是要有这四项,请问如果是数组的问题,那是哪的问题呢,谢谢了

我以前也遇到过,你是循环插入吗?方法有问题估计

循环一下 有则不插入 无则插入数据

回到顶部