生命周期函数演示

<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="UTF-8">

<meta name="viewport" content="width=device-width, initial-scale=1.0">

<meta http-equiv="X-UA-Compatible" content="ie=edge">

<title>Document</title>

<script src="js/vue-2.4.0.js"></script>

</head>

<body>

<div id="app">

<input type="button" value="修改msg" @click="msg=‘No‘">

<h3 id="h3">{{ msg }}</h3>

</div>

<script>

// 创建 Vue 实例,得到 ViewModel

var vm = new Vue({

el: ‘#app‘,

data: {

msg: ‘ok‘

},

methods: {

show() {

console.log(‘执行了show方法‘)

}

},

beforeCreate() { // 这是我们遇到的第一个生命周期函数,表示实例完全被创建出来之前,会执行它

// console.log(this.msg)

// this.show()

// 注意: 在 beforeCreate 生命周期函数执行的时候,data 和 methods 中的 数据都还没有没初始化

},

created() { // 这是遇到的第二个生命周期函数

// console.log(this.msg)

// this.show()

// 在 created 中,data 和 methods 都已经被初始化好了!

// 如果要调用 methods 中的方法,或者操作 data 中的数据,最早,只能在 created 中操作

},

beforeMount() { // 这是遇到的第3个生命周期函数,表示 模板已经在内存中编辑完成了,但是尚未把 模板渲染到 页面中

// console.log(document.getElementById(‘h3‘).innerText)

// 在 beforeMount 执行的时候,页面中的元素,还没有被真正替换过来,只是之前写的一些模板字符串

},

mounted() { // 这是遇到的第4个生命周期函数,表示,内存中的模板,已经真实的挂载到了页面中,用户已经可以看到渲染好的页面了

// console.log(document.getElementById(‘h3‘).innerText)

// 注意: mounted 是 实例创建期间的最后一个生命周期函数,当执行完 mounted 就表示,实例已经被完全创建好了,此时,如果没有其它操作的话,这个实例,就静静的 躺在我们的内存中,一动不动

},

// 接下来的是运行中的两个事件

beforeUpdate() { // 这时候,表示 我们的界面还没有被更新【数据被更新了吗? 数据肯定被更新了】

/* console.log(‘界面上元素的内容:‘ + document.getElementById(‘h3‘).innerText)

console.log(‘data 中的 msg 数据是:‘ + this.msg) */

// 得出结论: 当执行 beforeUpdate 的时候,页面中的显示的数据,还是旧的,此时 data 数据是最新的,页面尚未和 最新的数据保持同步

},

updated() {

console.log(‘界面上元素的内容:‘ + document.getElementById(‘h3‘).innerText)

console.log(‘data 中的 msg 数据是:‘ + this.msg)

// updated 事件执行的时候,页面和 data 数据已经保持同步了,都是最新的

}

});

</script>

</body>

</html>

原文地址:https://www.cnblogs.com/lujieting/p/10447883.html

时间: 2024-10-08 01:24:03

生命周期函数演示的相关文章

React之生命周期函数

1.新增知识点 /* https://reactjs.org/docs/react-component.html React生命周期函数: 组件加载之前,组件加载完成,以及组件更新数据,组件销毁. 触发的一系列的方法 ,这就是组件的生命周期函数 组件加载的时候触发的函数: 顺序:constructor -> componentWillMount -> render -> componentDidMount 组件数据更新的时候触发的生命周期函数: shouldComponentUpdate

Vue定义组件和生命周期函数及实例演示!

定义全局组件 Vue.component("name",{...}) 定义局部组件 let Com = {....} new Vue({ data : ..., ..., components : { Name : Com } }) 定义组件时 对象内的属性 data : 数据模型(除了初始化 该属性必须是函数类型) methods : 封装方法(用于给模板调用) computed : 计算属性 watch : 监听某个数据模型的变化(默认只能监听基本数据类型,准确的来说应该是只能监听

ionic中的生命周期函数

//ionic中的生命周期函数 onPageLoaded(){ //page初始化时 console.log("page 1 : page loaded"); } //在这里可以做页面初始化的一些事情 onPageWillEnter(){ //page即将进入时 console.log("page 1 : page will enter"); } onPageDidEnter(){ //page进入后 console.log("page 1 : page

Fragment 整个生命周期演示

Fragment生命周期主要体现在以下表中13个方法里,以下是按照Fragment从开始到销毁的先后执行顺序排序. 序号 方法名称 描述 1 public void onInflate(Activity activity, AttributeSet attrs,BundlesavedInstanceState) 在Activity.onCreate方法之前调用,可以获取除了View之外的资源 2 public void onAttach(Activity activity) 当fragment第

为什么Activity生命周期函数是运行在UI线程

这是我自己给自己提的问题,或者说是Activity的生命周期函数是怎样运行在主线程的?下面简单分析一下,讨论的问题其实远远不止于这个问题.会涉及到进程的启动,Binder的线程池,ActivityThread中的消息处理. 进程开启 我们最开始接触Android的时候,都知道主线程和非主线程区别,我们可以用Handler来将代码运行在主线程中.而主线程是如何开启的呢?在ActivityThread当中有个公有静态main方法,每次ActivityManagerService请求Zygote进程f

Cocos2d-x场景生命周期函数介绍

层(Layer)的生命周期函数有例如以下: init().初始化层调用. onEnter().进入层时候调用. onEnterTransitionDidFinish().进入层并且过渡动画结束时候调用. onExit().退出层时候调用. onExitTransitionDidStart(). 退出层并且開始过渡动画时候调用. cleanup(). 层对象被清除时候调用. 提示  层(Layer)继承于节点(Node),这些生命周期函数根本上是从Node继承而来.其实全部Node对象(包含:场景

Fragment中生命周期函数的介绍

1)第一次启动:onCreate->onAttach->onCreate->onCreateView->onActivityCreated->onStart->onResume->onResume 2)按下返回键:onPause->onPause->onStop->onStop->onDestroyView->onDestroy->onDetach->onDestroy 恢复时:因为按下返回键直接销毁了,所以恢复的时候会从

Activity生命周期函数、onSaveInstanceState()和onRestoreInstanceState()的介绍

本文涉及了Activity中的 onSaveInstanceState() 和 onRestoreInstanceState()方法,需要注意的他们并不是生命周期方法.我放在这是为了整合起来讲解. 一.生命周期中的方法调用时机 本文转自:http://blog.csdn.net/android_tutor/article/details/5772285 1) 首次执行时执行:onCreate()->onStart()->onResume() 2) 部分可见(被对话框等遮挡)时执行:onPaus

从Android到IOS,IOS应用生命周期函数

由于对于自己的C基础还算满意,花了一个月断断续续的把OC看完了,最近在看一些IOS开发的知识.初次创建一个IOS项目,xCode会自动生成这些文件与目录 从头开始,应用首次执行会先从main函数开始执行. int main(int argc, char * argv[]) { @autoreleasepool { return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); } } 看到源码中