标签:模块 执行 为什么 功能 htm 变量 影响 就是 数据
组件是一个单独功能模块的封装:组件中的数据是保存在哪里呢?顶层的Vue实例中吗?
经过测试 我们发现是不能访问的,即使可以访问,如果将所有数据都放在Vue实例中,Vue实例就会变得非常臃肿,Vue组件应该有自己保存数据的地方 组件对象也有一个data属性(组件的原型就是指向Vue的,也可以有methods属性,生命周期) 只是这个对象属性必须是一个函数,而且这个函数返回一个对象,对象内部保存着数据
为什么组件data属性必须是函数
写成函数形式:如果复用组件的话,它们并不是共用同一个对象,每次调用组件的时候都会data属性都会renturn一个新的对象,函数在每次执行的时候都会创建一个新的栈空间,他们的内存地址都不一样,保证各个组件之间使用变量不会仙相互影响,组件都是要复用的,但是要保证每个复用的地方都要有自己的逻辑
每一个组件都需要有一个data来保存属于自己的状态
标签:模块 执行 为什么 功能 htm 变量 影响 就是 数据
原文地址:https://blog.51cto.com/13550695/2460979