美文网首页
Vue.js2.0中子组件修改父组件传递过来的props,并不影

Vue.js2.0中子组件修改父组件传递过来的props,并不影

作者: symY_Y | 来源:发表于2018-11-19 15:31 被阅读0次

    vue2.0中,子组件中不能修改父组件的状态,否则在控制台中会报错。
    但是经我测试发现,这仅限于props为非数组及对象等引用类型数据,譬如字符串,数字等
    如果props是对象或数组的话,在子组件内修改props的话,父组件是不会报错的。
    那么要怎么解决修改props传的值而不污染父组件的值:
    1,可以使用ES6提供的Object.assign({}, prop)的返回值就是一个全新的对象,操作这个新对象不会影响旧对象。如果不用ES6就自己递归实现拷贝器
    2,可以给对象重新赋值:(给对象里的每一项重新赋值)

    this.childrenMessage = {
        id:this.parentMessage.id,
            name:this.parentMessage.name,
    }
    

    相关文章

      网友评论

          本文标题:Vue.js2.0中子组件修改父组件传递过来的props,并不影

          本文链接:https://www.haomeiwen.com/subject/eocafqtx.html