广告
返回顶部
首页 > 资讯 > 前端开发 > JavaScript >vue中data和data()的区别说明
  • 441
分享到

vue中data和data()的区别说明

2024-04-02 19:04:59 441人浏览 薄情痞子
摘要

目录data和data()的区别Vue实例中data属性组件化的项目中使用详解vue.js中的data文档之一文档之二文档之三文档之四data和data()的区别 Vue实例中dat

data和data()的区别

Vue实例中data属性

new Vue({
  el: '#app',
  data: {
    message: 'message'
  }
})

组件化的项目中使用

export default{
    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的同一属性改变,结合原型链知识很容易就能想清楚

以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。

--结束END--

本文标题: vue中data和data()的区别说明

本文链接: https://www.lsjlt.com/news/141156.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • vue中data和data()的区别说明
    目录data和data()的区别Vue实例中data属性组件化的项目中使用详解vue.js中的data文档之一文档之二文档之三文档之四data和data()的区别 Vue实例中dat...
    99+
    2022-11-13
  • spring-data-jpa中findOne与getOne的区别说明
    目录spring-data-jpa中findOne与getOne区别findOne与getOne的注释中也有些帮助spring-data-jpa的findOne和getOne要分清可...
    99+
    2022-11-12
  • vue中data和data()的区别有哪些
    小编给大家分享一下vue中data和data()的区别有哪些,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!data和data()的区别Vue实例中data属性new Vue({  el:&nb...
    99+
    2023-06-29
  • vue中传参params和data的区别
    目录1、使用data传参2、使用params传参3、总而言之1、使用data传参 前端请求方式为post import request from '@/utils/request' ...
    99+
    2022-11-13
  • uniapp和vue data里面区别
    Vue 和 Uniapp 都是基于 Vue 的框架,它们之间有很多相同之处,但也有一些不同之处。其中之一就是数据管理的方式不同。在 Vue 中,我们通常使用 data 属性来存储组件的数据,而在 Uniapp 中,我们可以使用 data 属...
    99+
    2023-05-22
  • vue中传参params和data的区别是什么
    今天小编给大家分享一下vue中传参params和data的区别是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。1、使用d...
    99+
    2023-06-30
  • vue@input和@click的区别及说明
    目录vue @input和@click的区别@input 一般用于监听事件@click 事件触发事件vue中input聚焦及坑点击按钮,使某个 input 框聚焦加载页面时自动聚焦【...
    99+
    2022-11-13
    vue @input vue @click @input和@click区别
  • Vue项目中new Vue()和export default{}的区别说明
    目录new Vue()和export default{}区别new Vue()export default{}import,export和export default注意问题new ...
    99+
    2022-11-13
  • Vue中router.beforeEach与beforeRouteEnter的区别及说明
    目录router.beforeEach与beforeRouteEnter的区别使用场景定义全局钩子函数beforeEach函数有三个参数vuerouter的几个钩子函数全局钩子(2个...
    99+
    2022-11-13
  • Vue的export default和带返回值的data()及@符号的用法说明
    目录export default和带返回值data()及@符号用法export和export default的使用export的使用export default的使用export d...
    99+
    2022-11-13
  • jquery中data()和attr()的区别有哪些
    本篇内容介绍了“jquery中data()和attr()的区别有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学...
    99+
    2022-10-19
  • Collection中的size()和isEmpty()区别说明
    目录Collection中的size()和isEmpty()区别说明Collection集合类介绍与实验list.size()和list.isEmpty()区别和效率及Collect...
    99+
    2022-11-13
  • Scala中Array和List的区别说明
    目录Scala Array和List的区别Scala快排List和Array数组效率实测Scala Array和List的区别 Difference between Array an...
    99+
    2022-11-12
  • Dockerfile中ENTRYPOINT 和 CMD的区别说明
    ENTRYPOINT 和 CMD 都是 Dockerfile 中的指令,用于指定容器启动时要执行的命令。区别如下:- ENTRYPO...
    99+
    2023-08-11
    区别
  • vue项目中路径使用@和~的区别及说明
    目录vue路径使用@和~的区别1. @ 使用说明2. ~ 使用说明@和~@符号路径解决@路径别名的学习如果让编辑器支持@~@路径的解决总结vue路径使用@和~的区别 首先:@和~ 都...
    99+
    2022-12-08
    vue路径 @和~的区别 路径使用@和~区别
  • vue中计算属性和方法的区别及说明
    目录vue计算属性和方法区别区别vue向计算属性传递参数vue计算属性和方法区别 当我们实现翻转字符串的业务逻辑时,使用插值表达式打码如下: <div id="app">...
    99+
    2022-11-13
  • docker run和start的区别说明
    docker中run和start的区别 docker run 后面指定的是一个镜像 而docker start指定的是一个容器 docker run是利用镜像生成容器,并启动容器,而...
    99+
    2022-11-11
  • mybatis createcriteria和or的区别说明
    createcriteria和or的区别 mybatis generator插件生成的example中,有createcriteria和or方法,他们有什么区别呢? 通过源码,能很清...
    99+
    2022-11-12
  • MyBatis ofType和javaType的区别说明
    目录ofType和javaType的区别MyBatis笔记 javatype和ofTypeofType和javaType的区别 JavaType和ofType都是用来指定对象类型的,...
    99+
    2022-11-13
  • @RequestBody,@RequestParam和@Param的区别说明
    目录@RequestBody,@RequestParam和@Param区别@Param@RequestBody@RequestParam@RequestParam使用注意事项比如下面...
    99+
    2022-11-13
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作