Vue——每次弹出el-dialog,都会执行mounted

在Vue开发中,有时需要我在同一个页面或列表中,多次加载同一个组件,但问题来了。(例如使用:新增、编辑、详情,使用弹框组件时)
该组件只在页面加载中,加载一次,后面不会再加载了,如el-dialog,解决办法如下,在el-dialog外再加一层div.

div中以v-if来控制组件el-dialog的出现与否,每次弹出el-dialog,都会执行mounted,而不加div,只会执行一次。

<div v-if="isShow">
  <ZDialog
    ref="zyxdialog"
    :title="title"
    :isShow="isShow"
    @hideDialog="isShow = false"
  >
    <NewShelf
      :shelfXX="shelfModel"
      :type="shelfType"
      v-if="isNewShelf"
      @dialogHide="dialogHide($event)"
    ></NewShelf>
  </ZDialog>
</div>
posted @ 2020-06-04 16:13  暮雪潇潇  阅读(3336)  评论(0编辑  收藏  举报