Vue.extend构造器和$mount实例构造组件后可以用$destroy()进行卸载,$forceUpdate()进行更新,$nextTick()数据修改

Posted 千と千寻の

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Vue.extend构造器和$mount实例构造组件后可以用$destroy()进行卸载,$forceUpdate()进行更新,$nextTick()数据修改相关的知识,希望对你有一定的参考价值。

html
 <div id="app">
    
        </div>
    <p><button onclick="destroy()">卸载</button></p>
    <p><button onclick="reload()">刷新</button></p>
    <p><button onclick="tick()">修改</button></p>
js
 var demo = Vue.extend({
             template:`#tmp`,
             data:function(){
                 return{
                    message:"用Vue.extend构造器生成一个组件,并用实例$mount挂载上去"
                 }
             },
             destroyed:function(){
                console.log(‘10-destroyed(第十个钩子函数) 销毁之后‘);
             },
             mounted:function(){
                console.log(‘4-mounted 被创建‘);
             },
             updated:function(){
                 console.log("6-updated 被更新后");
             }
        })
      var vm =  new demo().$mount(‘#app‘)
        function destroy(){
            vm.$destroy()
        };
        function reload(){
            vm.$forceUpdate()
        };
        function tick(){
            vm.message="原生js操作对象属性"
            // 当Vue构造器里的data值被修改完成后会调用这个方法,也相当于一个钩子函数吧,和构造器里的updated生命周期很像。
            vm.$nextTick(function(){
                console.log(‘原生js操作对象属性,修改后利用$nextTick来检测并输出修改的内容为‘+vm.message)
            })
        }

 

以上是关于Vue.extend构造器和$mount实例构造组件后可以用$destroy()进行卸载,$forceUpdate()进行更新,$nextTick()数据修改的主要内容,如果未能解决你的问题,请参考以下文章

vue 实例化定义路由

$mount方法是用来挂载我们的Vue.extend扩展的

Vue.extend提供自定义组件的构造器

vue 全局API

如何在HTML文件中使用vue的开发者工具

全局配置(Vue.extend( options ))