码迷,mamicode.com
首页 > 其他好文 > 详细

Vue--使用2

时间:2019-10-29 17:04:04      阅读:95      评论:0      收藏:0      [点我收藏+]

标签:iss   new   vat   激活   +=   vue   操作dom   性能   def   

 三十六-四十:组件生命周期钩子函数和图解

<body>
<div id="main">
    <App />
</div>
<script type="text/javascript" src="./node_modules/vue/dist/vue.js"></script>
<script type="text/javascript">
    var Test = {
        data(){
          return{
              msg:哈哈哈,
          }
        },
        template:`<div id="test">
                    <h3>{{msg}}</h3>
                    <button type="button" @click="clickHandler">修改msg</button>
                </div>
                `,
        methods:{
          clickHandler(){
              this.msg += alex
          }
        },
        //组件创建之前  用的不多
        beforeCreate() {
            //一般不用
            console.log(组件创建前:+this.msg);   //undefined
        },
        //组件创建之后
        created() {
            //可以操作数据,发送ajax请求,并且可以实现
            //vue对页面的影响 应用:发送ajax请求
            console.log(组件创建后:+this.msg);   //哈哈哈
        },
        //装载数据到DOM之前  用的不多
        beforeMount() {
            console.log(DOM装载前:+document.getElementById(app));  //null
        },
        //装载数据到DOM之后
        mounted() {
            //可以操作DOM
            console.log(DOM装载后:+document.getElementById(app));  //<div id="app"><div id="test"></div></div>
        },
        //获取更新之前的DOM
        beforeUpdate() {
            console.log(DOM更新前:+document.getElementById(test).innerHTML);  //<h3>哈哈哈</h3> <button type="button">修改</button>
        },
        //获取更新之后的DOM
        updated() {
            console.log(DOM更新后:+document.getElementById(test).innerHTML);  //<h3>哈哈哈alex</h3> <button type="button">修改</button>
        },
        //组件被销毁前   用的不多
        beforeDestroy() {
            console.log(组件销毁前);  //点按钮“创建和销毁”   没有用keep-alive,性能不好
        },
        //组件被销毁后   用的不多
        destroyed() {
            console.log(组件销毁后);   //点按钮“创建和销毁”   没有用keep-alive,性能不好
        },
        //组件被激活后   要用就用这个
        activated() {
            console.log(组件被激活了);  //点按钮“创建和销毁”    用keep-alive,性能好
        },
        //组件被停用后   要用就用这个
        deactivated() {
            console.log(组件被停用了);   //点按钮“创建和销毁”   用keep-alive,性能好
        }
    };
    var App={
        data(){
          return {
              isShow:true,
          }
        },
        //使用keep-alive将DOM缓存,性能好一些
        template:`<div id="app">
                    <keep-alive><Test v-if="isShow" /></keep-alive>
                    <button type="button" @click="isShow=!isShow">创建和销毁</button>
                  </div>`,
        components:{
            Test
        },
    };
    new Vue({
        el: #main,
        template:‘‘,
        components:{
            App
        }
    });
</script>
</body>

 

 组件的生命周期:

说明:虚拟DOM渲染速度比jQuery的DOM快,所以现在都使用js框架,而不使用jQuery

技术图片

 

Vue--使用2

标签:iss   new   vat   激活   +=   vue   操作dom   性能   def   

原文地址:https://www.cnblogs.com/staff/p/11759772.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!