vue.extend后的组件 ,当页面销毁的时候。组件怎么销毁

main是一个提示的组件,挂载到 vue上,再页面里引用。现在的问题是页面销毁后,组件却没销毁。请问各位大佬这样的咋处理下

<template>
  <el-dialog
    title="提示"
    :visible.sync="dialogVisible"
    width="35%"
    :close-on-click-modal="false"
  >
    <div class="dialog-box">
      <el-scrollbar wrap-class="scrollbar-wrapper">
        <div class="tip-text" v-html="messageText" />
      </el-scrollbar>
    </div>

  </el-dialog>
</template>

methods: {
    openDialog() {
      this.dialogVisible = true
    }
  }
import Vue from 'vue'
import Main from './main.vue'

const ShowMessageConstructor = Vue.extend(Main)

const ShowMessage = function(option) {
  const instance = new ShowMessageConstructor()
  instance.message = option
  instance.openDialog()
  instance.$mount()
  document.body.appendChild(instance.$el)
}

Vue.prototype.$showMessage = ShowMessage
export default ShowMessage
阅读 5.2k
2 个回答
新手上路,请多包涵
this.$destroy(true);
this.$el.parentNode.removeChild(this.$el);
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题