热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

data的值如何初始化vue_从零单排vue第九课Vue实例及生命周期

前期回顾上一节课我们重点学习了子组件如何与父组件通信,我们使用$emit方法在子组件中触发一个事件,然后在父组件中接收它。本节课我们来深入了解下vue实
eef85cd5c5ddd3d7983767ae82114bce.png

前期回顾

上一节课我们重点学习了子组件如何与父组件通信,我们使用$emit方法在子组件中触发一个事件,然后在父组件中接收它。本节课我们来深入了解下vue实例以及它的生命周期是怎么样的?

创建一个Vue实例

每个Vue应用都是通过Vue函数创建一个新的Vue实例开始的:

1var vm = new Vue({
2 //选项
3})

当创建Vue实例时,你可以传入一个选项对象,例如前面我们使用过的el、template、data、methods、props。其中el、template这个选项叫做DOM选项,data、methods、props叫做数据选项,完整的选项列表可以查看vue官方的API文档。

数据和方法

当一个 Vue 实例被创建时,它将 data 对象中的所有的属性加入到 Vue 的响应式系统中。当这些属性的值发生改变时,视图将会产生“响应”,即匹配更新为新的值。

除了数据属性,Vue 实例还暴露了一些有用的实例属性与方法。它们都有前缀 $,以便与用户定义的属性区分开来。

如下最简单的hello world代码:

123 4 5 6 7 8 9


10 {{msg}}
11

12
20
21

我们在浏览器控制台中输入vm,可以看到所有有关该实例的信息,包括实例属性和方法。

b8a4320110604c19ad9b5f39223f4851.png

也可以在vue官方API文档中看到有关用法。

实例的生命周期

生命周期是一个很有用的概念。在vue中,实例被创建出来,从创建到销毁,会经历一系列过程,在这个过程中,系统会调用相应的生命周期钩子。生命周期钩子是在Vue实例生命周期的某个阶段执行的已定义方法。从初始化开始到它被破坏时,实例都会遵循不同的生命阶段。

d44d5bcead6d03a6e40bc7d677aac864.png

可以看到,vue实例在每个重要阶段都有自己的生命周期钩子。可能很多人会问,这些函数方法有什么用呢?

我们在开发一个项目的时候,第一次页面加载时会触发 beforeCreate, created, beforeMount, mounted 这几个钩子,我们可以利用这些钩子完成一些初始化的工作,利用这些钩子我们就能控制页面加载的过程,能帮助我们形成更好的功能逻辑。

生命周期钩子的一些使用方法: beforecreate : 可以在这加个loading事件,在加载实例时触发 created : 初始化完成时的事件写在这里,如在这结束loading事件,异步请求也适宜在这里调用。 mounted : 挂载元素,获取到DOM节点。updated : 如果对数据统一处理,在这里写上相应函数。 beforeDestroy : 可以做一个确认停止事件的确认框 nextTick : 更新数据后立即操作dom。

欢迎关注微信公众号:从零单排vue,获取最新的vue学习资源。公众号学习资源正在建设中,请耐心等待。

0fa613fdfdf0967975562c9cfcb1b6e4.png



推荐阅读
  • 用Vue实现的Demo商品管理效果图及实现代码
    本文介绍了一个使用Vue实现的Demo商品管理的效果图及实现代码。 ... [详细]
  • 【Vue基础】监听属性watch
    Vue监听属性是watch,我们可以通过watch来响应数据的变化。代码示例: ... [详细]
  • <!DOCTYPEhtml><htmllang=en><head><metacharset=UT ... [详细]
  • vue.js如何实现数据的双向绑定呢?与angular不同。vue利用的是es5的defineproperty特性。1.一个小例子 ... [详细]
  • 媒介本文的前身是源自github上的项目awesome-github-vue,但由于该项目上次更新时候为2017年6月12日,许多内容早已逾期或是许多近期优异组件未被收录,所以小肆 ... [详细]
  • 移动端常用单位——rem的使用方法和注意事项
    本文介绍了移动端常用的单位rem的使用方法和注意事项,包括px、%、em、vw、vh等其他常用单位的比较。同时还介绍了如何通过JS获取视口宽度并动态调整rem的值,以适应不同设备的屏幕大小。此外,还提到了rem目前在移动端的主流地位。 ... [详细]
  • SpringMVC接收请求参数的方式总结
    本文总结了在SpringMVC开发中处理控制器参数的各种方式,包括处理使用@RequestParam注解的参数、MultipartFile类型参数和Simple类型参数的RequestParamMethodArgumentResolver,处理@RequestBody注解的参数的RequestResponseBodyMethodProcessor,以及PathVariableMapMethodArgumentResol等子类。 ... [详细]
  • 如何在HTML中获取鼠标的当前位置
    本文介绍了在HTML中获取鼠标当前位置的三种方法,分别是相对于屏幕的位置、相对于窗口的位置以及考虑了页面滚动因素的位置。通过这些方法可以准确获取鼠标的坐标信息。 ... [详细]
  • Vue基础一、什么是Vue1.1概念Vue(读音vjuː,类似于view)是一套用于构建用户界面的渐进式JavaScript框架,与其它大型框架不 ... [详细]
  • 认识Vue关于Vue的描述有不少,不外乎都会拿来与Angular和React对比,同样头顶MVVM双向数据驱动设计模式光环的Angular自然被对比的最多,但到目前为止,Angul ... [详细]
  • #ReactivityFundamentals#DeclaringReactiveState ... [详细]
  • Vue.Js_Vue之vue.js声明式渲染
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了Vue之vue.js声明式渲染相关的知识,希望对你有一定的参考价值。ht ... [详细]
  • Voicewo在线语音识别转换jQuery插件的特点和示例
    本文介绍了一款名为Voicewo的在线语音识别转换jQuery插件,该插件具有快速、架构、风格、扩展和兼容等特点,适合在互联网应用中使用。同时还提供了一个快速示例供开发人员参考。 ... [详细]
  • 计算机存储系统的层次结构及其优势
    本文介绍了计算机存储系统的层次结构,包括高速缓存、主存储器和辅助存储器三个层次。通过分层存储数据可以提高程序的执行效率。计算机存储系统的层次结构将各种不同存储容量、存取速度和价格的存储器有机组合成整体,形成可寻址存储空间比主存储器空间大得多的存储整体。由于辅助存储器容量大、价格低,使得整体存储系统的平均价格降低。同时,高速缓存的存取速度可以和CPU的工作速度相匹配,进一步提高程序执行效率。 ... [详细]
  • CF:3D City Model(小思维)问题解析和代码实现
    本文通过解析CF:3D City Model问题,介绍了问题的背景和要求,并给出了相应的代码实现。该问题涉及到在一个矩形的网格上建造城市的情景,每个网格单元可以作为建筑的基础,建筑由多个立方体叠加而成。文章详细讲解了问题的解决思路,并给出了相应的代码实现供读者参考。 ... [详细]
author-avatar
C_z和
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有