在学习Vue的过程中会对Vue组件中的data必须是一个函数表示不解,首先要理解这个问题得先了解组件的作用以及属性。
组件是可复用的vue
实例,一个组件被创建好之后,就可能被用在各个地方,而组件不管被复用了多少次,组件中的data
数据都应该是相互隔离,互不影响的,基于这一理念,组件每复用一次,data
数据就应该被复制一次,之后,当某一处复用的地方组件内data
数据被改变时,其他复用地方组件的data
数据不受影响
以如下的计数器小案例为例:
当希望不要让三个计数器指向同一个对象地址则需要data是一个函数,否则data是一个对象或者是其他数据类型的数据的话会导致三个组件都是用同一个对象,无法做到数据不共享,所以data必须是一个函数。