Vue中创建组件,为什么没有el,且为什么data必须写成函数
为什么创建时没有el配置对象:
这个问题其实很好回答,因为el绑定的是一个容器,如果绑定了,就写死在那个位置了,别人用起来就非常麻烦,这还能叫组件?
组件都是“砖”,可能这个页面需要,那个页面也需要,如果绑定到具体容器,那该为谁服务呢。所以没有el配置对象。
为什么data必须写成函数:
在new Vue({})中,el和data有2种写法,分别是对象式和函数式,组件化编程内,只能用函数式。
原因:对象在内存中是引用关系,比如说,页面1用了这个数据,页面2用了这个数据,当页面1需要修改数据时,页面2的数据也会修改。
所以一般不用对象式的写法,只用函数式的写法。