vue中data和data()的区别有哪些
vue中data和data()的区别有哪些
小编给大家分享一下vue中data和data()的区别有哪些,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!
data和data()的区别
Vue实例中data属性
newVue({el:'#app',data:{message:'message'}})
组件化的项目中使用
exportdefault{data(){return{message:'message'}}}
注意:
在大型项目中data会造成数据污染(data是全局的)
将data封装成一个函数,我们在实例化组件的时候只是调用了这个函数生成的数据副本,这就避免了数据污染。
详解vue.js中的data
本文从Vue.js的官方中文文档来逐行分析看看Vue.js的数据对象——data
官方文档地址
文档之一
分析一:
首先,data的类型可以是Object
其次,组件(component)里的定义的data必须是方法类型的,至于为什么接下来会介绍到;
文档之二
分析二:
在上图的实例中,app的data对象中有五个属性,分别是:
newTodoText
visitCount
hideCompletedTodos
todos
error
Vue会把这五个属性转化为getter和setter来控制访问对象app的属性,以第一个属性newTodoText为例设置了getter和setter:
文档之三
分析三:
这个好理解,就是你可以在data中可以定义属性时在属性名开头加上下划线“_”或者美元符号“$”,就不可以直接访问,
此时图一会报错,显示 _first is not defined ,图二才是正确姿势
文档之四
分析四:
这就是分析一要解决的问题了,为什么组件(component)里的定义的data必须是方法类型,原因就是在此,在工程中,每个组件都有可能用来被创建多个实例,而这个组件的实例他们的属性是不能共用的!意思是组件A的属性改变不能引起组件B的同一属性改变,结合原型链知识很容易就能想清楚
看完了这篇文章,相信你对“vue中data和data()的区别有哪些”有了一定的了解,如果想了解更多相关知识,欢迎关注恰卡编程网行业资讯频道,感谢各位的阅读!
推荐阅读
-
如何在 Linux命令行下解析 JSON 数据
-
如何在 Linux命令行下将文件内容按列拆分
-
vue表格组件教程学习(vue proxytable只能在开发环境跨域吗)
vueproxytable只能在开发环境跨域吗?跨域问题来源于JavaScript的同源策略,即只有协议主机名端口号(如...
-
电脑找不到program(data c盘找不到programdata)
c盘找不到programdata?1、可以打开我的电脑--工具--文件夹选项--栏里点--隐藏文件和文件夹--选中后“会显示所有文...
-
Vue组件的自定义事件和全局事件总线怎么使用
Vue组件的自定义事件和全局事件总线怎么使用这篇“Vue组件的自定...
-
vue中消息订阅与发布如何使用
vue中消息订阅与发布如何使用这篇文章主要介绍“vue中消息订阅与...
-
Vue显示图片的方式有哪些
Vue显示图片的方式有哪些这篇文章主要介绍“Vue显示图片的方式有...
-
vue引入静态jquery报错如何解决
vue引入静态jquery报错如何解决这篇文章主要介绍“vue引入...
-
php预防sql注入和xss攻击
functionxss_clean($data){//Fix&entity\n;$data=str_replace...
-
「php」分享收藏,四个PHP实现的小功能,了解一下