美文网首页
vue2.x的变化之一:禁止修改props

vue2.x的变化之一:禁止修改props

作者: 明灭_ | 来源:发表于2018-12-04 20:50 被阅读0次

    一、说明
    在vue1.x中,可以在子组件中改变prop的值,在vue2.x中已被废弃。官方文档解释如下:

    组件内修改 prop 是反模式 (不推荐的) 的。比如,先声明一个 prop ,然后在组件中通过 this.myProp = 'someOtherValue' 改变 prop 的值。根据渲染机制,当父组件重新渲染时,子组件的内部 prop 值也将被覆盖。

    二、解决方法

    • 通过data属性,用prop去设置一个data属性的默认值
    • 通过computed属性

    方法1的示例:

    data() {
      return {
        selectType_c: this.selectType,
        onlyContent_c: this.onlyContent
      }
    },
    props: {
      selectType: {
        type: Number,
        default: 1
      },
      onlyContent: {
        type: Boolean,
        default: false
      }
    }
    

    然后在method中修改data中的值而不是props

    相关文章

      网友评论

          本文标题:vue2.x的变化之一:禁止修改props

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