此方式不需要在特定頁面內加入組件代碼,通過調用公共API方法即可,公共預覽方法內,會進行預覽組件的動態加載(追加至body節點)
-
1.在main.js中引入ElImageViewer,此組件默認不對外暴露,是image組件中使用的一個功能:
import ElImageViewer from "element-ui/packages/image/src/image-viewer";
-
2.在預覽的公共方法中:
let ElImageViewer = Vue.extend({ template: '<el-image-viewer v-if="elImageViewerVisible" :on-close="() => {elImageViewerVisible = false}" :url-list="elImageViewerList" />', data: function () { return { elImageViewerVisible: true, elImageViewerList: [url] } } }) let component = new ElImageViewer().$mount() document.body.appendChild(component.$el)