如何使用 vue + typescript 编写页面 (Vue生命周期函数)

每一个mvvm框架,生态周期显得格外重要,vue有哪些生态函数,可以看一下,和使用方式

Vue生命周期函数简单罗列

详细解答可以参照 选项 / 生命周期钩子

1. beforeCreate

模块创建之前,this指向的为对象本身,并没有任何实际操作

2. created

所有的getters,data,等等被观测完成,此时可以获取到data内容

3. beforeMount

检测是不是有el相关的内容,如果没有则停止向下执行,直到vm.$mount(el)挂载上真实元素 此时已经可以获取到被创建的 this.$el

该钩子在服务器端渲染期间不被调用

3.1 render

在Vue中,还有一个render函数,用来渲染页面。但是Component是没有的

<div id="app">
    html 模板
</div>
<script>
new Vue({
    el:"#app",
    template:"template模板",
    render(r){ r('h1','函数渲染模板')  }
})
</script>
复制代码

render函数选项 > template选项 > html模板.

4. mounted

该钩子在服务器端渲染期间不被调用。

页面模板解析完成后,此时一切准备就绪,但是并不能一定保证所有的子组件被挂载到页面上,如果此时需要用到dom元素的内容时,最好使用this.$nextTick()

5. activated

该钩子在服务器端渲染期间不被调用

这个周期函数是引入vue-router后,启用<keep-alive>时,进入页面路由映射的组件时触发

6. beforeUpdate

该钩子在服务器端渲染期间不被调用,因为只有初次渲染会在服务端进行

当data数据被修改后,虚拟dom更新实际dom前调用

7. updated

该钩子在服务器端渲染期间不被调用

页面dom替换完成后调用

8. deactivated

该钩子在服务器端渲染期间不被调用

路由离开当前页面前调用

9. beforeDestroy

该钩子在服务器端渲染期间不被调用

组件被销毁前调用

10. destroyed

该钩子在服务器端渲染期间不被调用 组件销毁后调用

11. errorCaptured

拦截子组件的错误 return false阻止继续冒泡

上一章 如何使用 vue + typescript 编写页面 ( vuex装饰器补充部分--store装饰器 )

猜你喜欢

转载自juejin.im/post/5c6bbcfbf265da2da955ab79
今日推荐