前期回顾

上一节课我们重点学习了子组件如何与父组件通信,我们使用$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代码:

 1<!DOCTYPE html>2<html lang="en">3    <head>4        <meta charset="utf-8">5        <title>Vue实例</title>6    <script src="vue.js"></script>7    </head>8    <body>9    <div id="app">
10        {{msg}}
11    </div>
12      <script>
13        var vm = new Vue({
14          el: '#app',
15          data: {
16            msg: 'hello world'
17          }
18        })
19      </script>
20    </body>
21</html>

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

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

实例的生命周期

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

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

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

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

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

vue 请求在子组件加载后了_从零单排vue第九课--Vue实例及生命周期相关推荐

  1. vue 页面及内部子组件加载结束以后触发

    前言:在页面调用好的时候总是遇到需要页面渲染结束以后才调用的需求,今天总结一下 大纲 1.vue 2.jquery 3.js 1.vue中存在mounted和$nextTick vue中的mounte ...

  2. vue组件加载完成之后执行方法_vue-cli监听组件加载完成的方法

    在使用vue-cli开发项目时遇到过一个问题,要求是页面组件全部加载完成后再执行某个函数,给上代码参考,方法可能有点笨,好在实现了功能. 1.安装vuex npm install vuex --sav ...

  3. vue 实现tab切换动态加载不同的组件

    vue 实现tab切换动态加载不同的组件 使用vue中的is特性来加载不同的组件.具体看如下代码:这个功能对于vue比较复杂的页面可以使用上,可以把一个页面的功能拆分出来,使代码更简单.使用方式具体看 ...

  4. vue组件加载完成之后执行方法_Vue.js实现ready函数加载完之后执行某个函数的方法...

    Vue.js实现ready函数加载完之后执行某个函数的方法 发布于 2020-7-10| 复制链接 摘记: vue.js 教程Vue.js(读音 /vjuː/, 类似于 view) 是一套构建用户界面 ...

  5. webpack配置vue组件加载器

    前言 App.vue单文件组件代码 <template><div><h1>App根组件</h1></div> </template&g ...

  6. vue 如何处理两个组件异步问题_Vue异步组件处理路由组件加载状态的解决方案...

    vue.js 组件 组件(Component)是 Vue.js 最强大的功能之一. 组件可以扩展 HTML 元素,封装可重用的代码. 在大型单页面应用中,处于对性能的考虑和首屏加载速度的要求,我们一般 ...

  7. dom vue 加载完 执行_前端面试题——Vue

    前言 前几天整理了一些 html + css + JavaScript 常见的面试题(https://segmentfault.com/u/youdangde_5c8b208a23f95/articl ...

  8. dom vue 加载完 执行_前端面试题Vue

    前言 前几天整理了一些 html + css + JavaScript 常见的面试题,然后现在也是找了一些在 Vue 方面经常出现的面试题,留给自己查看消化,也分享给有需要的小伙伴. 如果文章中有出现 ...

  9. vue 图片拖动加载 类似于地图_前端性能优化之图片懒加载(附vue自定义指令)...

    作者:lzg9527 链接:https://juejin.cn/post/6903774214780616718 在类电商类项目,往往存在大量的图片,如 banner 广告图,菜单导航图,美团等商家列 ...

最新文章

  1. 解题报告:luogu P3469 [POI2008]BLO-Blockade(割点判定 + 思维计算)
  2. C++_pthread read-write lock_读写锁_visual studio 2015下配置
  3. x79主板bios设置中文_bios菜单
  4. 命令行获取docker远程仓库镜像列表
  5. fckeditor for php 下载,FCKeditor2.3 For PHP 详细整理的使用参考
  6. Linux(11)--(历史命令)Ctrl+r, history,!
  7. gitlab导入本地项目_Gitlab使用心得
  8. 学以致用十四-----打造一个简单的vim IDE
  9. VBS 控制 Windos 系统音量 及视频播放
  10. 传统IDC部署网站(八)
  11. liteon460w服务器电源管理系统,PS-5251-06 LITEON光宝工业电源
  12. android toast显示在中间,android Toast 弹出在屏幕中间位置以及自定义Toast
  13. 计算机通信普遍采用报文交换,报文交换
  14. Digispark ATtiny85配合Prismatik软件DIY屏幕流光溢彩效果(见坑填坑)
  15. 英雄联盟英雄技能总结
  16. 小葵花妈妈课堂开课了:《ArrayList源码浅析》
  17. java解压7z格式的压缩包
  18. 【深入理解RabbitMQ】RabbitMQ exclusive和mandatory的理解
  19. 有声小说配音兼职平台,十大正规配音兼职平台
  20. 不要虚荣心太强,要踏实肯干

热门文章

  1. Google PPRGo: 两分钟分类千万节点的最快GNN
  2. NLP简报(Issue#8)
  3. 惯性积计算实例_关于材料力学中惯性矩的认识00
  4. 冰兮坊Java_java 中文字符 获取首字母(一级二级字符)
  5. 实战java虚拟机 百度云_《实战JAVA虚拟机 JVM故障诊断与性能优化》pdf百度云下载...
  6. Stanford CS230深度学习(九)注意力机制和语音识别
  7. BZOJ1044: [HAOI2008]木棍分割(dp 单调队列)
  8. python面试自我介绍_如何拿到半数面试公司Offer——我的Python求职之路
  9. 计算机职业英语一级,计算机职业英语一级
  10. thinkphp5连接数据库mysql_ThinkPHP学习(三)配置PHP5支持MySQL,连接MySQL数据库