生命周期过程:

new vue() :vue实例进行初始化,读取所有生命周期函数,并没有执行(不会调用)

beforeCreate():创建前,读取属性,计算属性,添加set/get,读取watch

created() : 创建完成,可以操作数据(ajax),判断是否有el配置/被调用了$mount(),判断是否存在el配置/$mount作用的dom结构

beforeMount() : 将dom结构读取出来,渲染dom结构(挂载的过程)

mounted() : 可以操作dom了,可以使用ref了

跟用户交互、操作数据,在vue工作期间发生了数据变化,数据变化导致dom需要重新渲染,下面两个更新生命周期的方法指的是dom的更新:

beforeUpdate()

updated()

直到执行了$destory(),或者dom结构不在了,vue实例就会销毁

beforeDestory()

distoryed()

vm.$mount() : 挂载vm实例(vm实例作用在dom结构上)

vm.$destory() : 销毁实例和dom的关联,不提倡手动调用$destory

         var vm = new Vue({
el: '#app',
data: {
msg: 'hello world',
arr: ['item1', 'item2', 'item3'],
obj: {
name: 'zhangsan'
}
},
computed: {
len(){
return this.msg.length;
}
},
watch: {
msg(newVal, oldVal){
console.log('监听到了msg的变化');
},
arr(){
console.log('监听到了arr的变化');
}
},
methods: {
test(){
console.log('test执行了');
},
btnAction(){
this.$destroy();
},
btn2Action(){
//强制更新dom
this.$forceUpdate();
},
btn3Action(){
this.msg = 'hello vue';
},
btn4Action(){
this.arr.push('item4');
//监听一个属性发生变化导致的dom的更新。
//写$nextTick要求是,数据变化后的代码紧接着写$nextTick
this.$nextTick(()=>{
console.log('dom也变化了');
});
}
},
//生命周期函数
//创建前
beforeCreate(){
console.log('beforeCreate.....');
console.log(this.msg);
},
//创建完成,ajax,操作数据
created(){
console.log('created....');
console.log(this.len);
this.test();
},
beforeMount(){
console.log('beforeMount....');
console.log(this.$refs);
},
mounted(){
console.log('mounted....');
console.log(this.$refs);
},
beforeUpdate(){
console.log('beforeUpdate....');
},
updated(){
console.log('updated....');
},
beforeDestroy(){
console.log('beforeDestroy....');
},
destroyed(){
console.log('destroyed....');
}
})

  

vue的生命周期钩子的更多相关文章

  1. vue生命周期图示中英文版Vue实例生命周期钩子

    vue生命周期图示中英文版Vue实例生命周期钩子知乎上近日有人发起了一个 “react 是不是比 vue 牛皮,为什么?” 的问题,Vue.js 作者尤雨溪12月4日正面回应了该问题.以下是尤雨溪回复 ...

  2. Vue 组件生命周期钩子

    Vue 组件生命周期钩子 # 1)一个组件从创建到销毁的整个过程,就称之为组件的生命周期 # 2)在组件创建到销毁的过程中,会出现众多关键的时间节点, 如: 组件要创建了.组件创建完毕了.组件数据渲染 ...

  3. vue之生命周期钩子函数之运用

    一.什么是生命周期钩子函数: 每个 Vue 实例在被创建时都要经过一系列的初始化过程——例如,需要设置数据监听.编译模板.将实例挂载到 DOM 并在数据变化时更新 DOM 等.同时在这个过程中也会运行 ...

  4. vue的生命周期钩子函数

    一.vue生命周期图示 二.钩子函数执行时间 beforeCreate      在创建实例之前,data只声明但没有赋值  在实例初始化之后,数据观测 (data observer) 和 event ...

  5. vue.js生命周期钩子函数及缓存

    在使用vue.js进行开发时,使用最多的就是created.mounted.activated. 由于有些情况下,我们需要复用某些组件,因此需要用到keep-alive. 当引入keep-alive时 ...

  6. VUE的生命周期——钩子函数

  7. Vue ---- 组件文件分析 组件生命周期钩子 路由 跳转 传参

    目录 Vue组件文件微微细剖 Vue组件生命周期钩子 Vue路由 1.touter下的index.js 2.路由重定向 3.路由传参数 补充:全局样式导入 路由跳转 1. router-view标签 ...

  8. Vue.js的指令、生命周期钩子与数据选项

    vue.js官网:https://cn.vuejs.org/v2/guide/components-registration.html 一.常用指令 v-if ... v-else: 作用:控制元素是 ...

  9. Vue_(组件)实例生命周期钩子

    Vue生命周期中文文档 传送门 Vue生命周期:Vue实例从创建到销毁的过程,称为Vue的生命周期: Vue生命周期钩子:又称为Vue生命周期钩子方法/函数,是Vue为开发者提供的方法,我们可以通过这 ...

随机推荐

  1. mysql语法、特殊符号及正则表达式的使用

    http://blog.csdn.net/pipisorry/article/details/46773545 sql语言 结构化的查询语言.(Structured Query Language),是 ...

  2. Leetcode_49_Anagrams

    本文是在学习中的总结,欢迎转载但请注明出处:http://blog.csdn.net/pistolove/article/details/42744709 Given an array of stri ...

  3. 写的还不错的专题,android性能优化

    http://www.trinea.cn/android/android-performance-demo/

  4. android Timer与TimerTask的相关操作

    项目上面的部分操作需要使用到定时器进行周期性的控制.网络上面对于定时器的操作通常有三种实现方法. 我是通过Timer与TimerTask相结合实现的定时器功能.具体实现过程如下: 第一步,得到Time ...

  5. 数据挖掘进阶之关联规则挖掘FP-Growth算法

    数据挖掘进阶之关联规则挖掘FP-Growth算法 绪 近期在写论文方面涉及到了数据挖掘,需要通过数据挖掘方法实现软件与用户间交互模式的获取.分析与分类研究.主要涉及到关联规则与序列模式挖掘两块.关联规 ...

  6. Android Notification 版本适配方案

    Notification 介绍见:https://developer.android.com/reference/android/app/Notification.html Android api 一 ...

  7. MySQL 5.6初始配置调优

    原文链接: What to tune in MySQL 5.6 after installation原文日期: 2013年09月17日翻译日期: 2014年06月01日翻译人员: 铁锚 随着 大量默认 ...

  8. 苹果新的编程语言 Swift 语言进阶(十三)--类型检查与类型嵌套

    一 类型检查 1. 类型检查操作符 类型检查用来检查或转换一个实例的类型到另外的类型的一种方式. 在Swift中,类型检查使用is和as操作符来实现. is操作符用来检查一个实例是否是某种特定类型,如 ...

  9. saiku的安装教程

    Saiku是一个模块化的开源分析套件,它提供轻量级的OLAP(联机分析处理),并且可嵌入.可扩展.可配置. 环境准备 1.JDK5及以上版本. 2.Saiku Server最新版本,下载地址:http ...

  10. Linux 系统应用编程——线程基础

    传统多任务操作系统中一个可以独立调度的任务(或称之为顺序执行流)是一个进程.每个程序加载到内存后只可以唯一地对应创建一个顺序执行流,即传统意义的进程.每个进程的全部系统资源是私有的,如虚拟地址空间,文 ...