zoukankan      html  css  js  c++  java
  • Vue 实例的生命周期

    生命周期(Vue2)

    1. 主要阶段

    • 挂载(初始化相关属性)

      ① beforeCreate

      ② created

      ③ beforeMount

      ④ mounted

    • 更新(元素或组件的变更操作)

      ① beforeUpdate

      ② updated

    • 销毁(销毁相关属性)

      ① beforeDestroy

      ② destroyed

    2. Vue实例的产生过程

      ① beforeCreate 在实例初始化之后,数据观测和事件配置之前被调用。

      ② created 在实例创建完成后被立即调用。

      ③ beforeMount 在挂载开始之前被调用。

      ④ mounted el被新创建的vm.$el替换,并挂载到实例上去之后调用该钩子。

      ⑤ beforeUpdate 数据更新时调用,发生在虚拟DOM打补丁之前。

      ⑥ updated 由于数据更改导致的虚拟DOM重新渲染和打补丁,在这之后会调用该钩子。

      ⑦ beforeDestroy 实例销毁之前调用。

      ⑧ destroyed 实例销毁后调用。

    
    <!DOCTYPE html>
    <html lang="en">
    <head>
      <meta charset="UTF-8">
      <title>Document</title>
    </head>
    <body>
      <div id="app">
        <div>{{msg}}</div>
        <button @click='update'>更新</button>
        <button @click='destroy'>销毁</button>
      </div>
      <script type="text/javascript" src="js/vue.js"></script>
      <script type="text/javascript">
        /*
          Vue实例的生命周期
          
        */
        var vm = new Vue({
          el: '#app',
          data: {
            msg: '生命周期'
          },
          methods: {
            update: function(){
              this.msg = 'hello';
            },
            destroy: function(){
              this.$destroy();
            }
          },
          beforeCreate: function(){
            console.log('beforeCreate');
          },
          created: function(){
            console.log('created');
          },
          beforeMount: function(){
            console.log('beforeMount');
          },
          mounted: function(){
            console.log('mounted');
          },
          beforeUpdate: function(){
            console.log('beforeUpdate');
          },
          updated: function(){
            console.log('updated');
          },
          beforeDestroy: function(){
            console.log('beforeDestroy');
          },
          destroyed: function(){
            console.log('destroyed');
          }
        });
      </script>
    </body>
    </html>
    

    本文来自博客园,作者:一纸年华,转载请注明原文链接:https://www.cnblogs.com/nullcodeworld/p/15330757.html

  • 相关阅读:
    ps 快捷键
    python中== 和 is 的区别
    微信开发者工具快捷键汇总
    IDEA常用快捷键
    非前后端分离项目使用vue继承,提取公共方法和filters
    Plupload上传插件中文帮助文档
    idea 提示 string template are not supported current JavaScrip Version 的解决
    nginx的分配方式
    nginx相关配置的内容
    Deepin启动界面个性化
  • 原文地址:https://www.cnblogs.com/nullcodeworld/p/15330757.html
Copyright © 2011-2022 走看看