const props = defineProps({
a: Object
})
function calcs() {
var b = props.a;
b.push({
xxx: yyy
});
}
。一个= {x:‘y’}
每次调用函数calcs
时,我都需要b
在b.push
之前是{x: 'y'}
,但b
一直在推xxx:yyy
,有解吗?我试了ref(props.a)
,reactive(props.a)
,仍然不工作。
第一次调用calcs
,输出为:
props.a={x: 'y'}
b={x: 'y',xxx: 'yyy'}
第二次调用calcs
,输出变成:
props.a={x: 'y',xxx: 'yyy'}
b={x: 'y',xxx: 'yyy',xxx: 'yyy'}
第三次调用calcs
,输出变成:
props.a={x: 'y',xxx: 'yyy',xxx: 'yyy'}
b={x: 'y',xxx: 'yyy',xxx: 'yyy',xxx: 'yyy'}
我不知道每次调用后prop a的变化,我如何才能得到与第一次调用相同的输出:
props.a={x: 'y'}
b={x: 'y',xxx: 'yyy'}
谢谢,我是Vue的新手。
var b = JSON.parse(JSON.stringify(props.a))修复了此问题。