Vue报错:[Vue warn]: Avoid mutating a prop directly since the value will be overwritten whenever...
报错如图所示:其原因是我从父组件向子组件传值时,用props接收之后,我在子组件中直接修改了接收的参数的值。例如://接收了两个参数:一个数组,一个字符串props:["list","type"]......//做了一些修改,比如合并了一个新数组this.list=this.list.concat(newList)这时候再使用list这个数据就会报错。原因:由于Vue内部的机制,传入的props中
·
报错如图所示:
其原因是我从父组件向子组件传值时,用props接收之后,我在子组件中直接修改了接收的参数的值。
例如:
//接收了两个参数:一个数组,一个字符串
props:["list","type"]
......
//做了一些修改,比如合并了一个新数组
this.list=this.list.concat(newList)
这时候再使用list这个数据就会报错。
原因:
由于Vue内部的机制,传入的props中的值
是不允许被修改的。在新的渲染机制中,当父组件重新渲染时,子组件都被会覆盖,这时的props是不可变的。
解决:
在data中再定义两个新的变量,然后把父组件传过来的值赋值给新的变量,之后操作这两个新的变量即可。
更多推荐
所有评论(0)