vue组件中data必须是一个函数的原因

vue组件中data值不能为对象,因为对象是引用类型,组件可能会被多个实例同时引用。如果data值为对象,将导致多个实例共享一个对象,其中一个组件改变data属性值,其它实例也会受到影响。

上面解释了data不能为对象的原因,这里我们简单说下data为函数的原因。data为函数,通过return 返回对象的拷贝,致使每个实例都有自己独立的对象,实例之间可以互不影响的改变data属性值。

data为函数的示例:

data:function(){
    return {
            k1: 'v1',
            k2: 'v2',
        ...
    }
}

原创文章,转载请标明出处:https://blog.csdn.net/yihanzhi/article/details/80350253

猜你喜欢

转载自blog.csdn.net/yihanzhi/article/details/80350253
今日推荐