import Vue from 'vue'; import store from 'store'; import AdvanceViewImage from 'components/AdvanceViewImage.vue'; import IssueTypeItem from 'views/helpInfo/issueType/modal/ItemModal.vue'; import InformationItem from 'views/helpInfo/information/modal/ItemModal.vue'; import BannerItem from 'views/baseManagement/bannerManagement/modal/ItemModal.vue'; import InfoItem from 'views/baseManagement/infoManagement/modal/ItemModal.vue'; const modal = (Component, props) => { let _component = null; const Instance = new Vue({ props, store, render(h) { return h(Component, { props: props, on: { cancel: () => { Instance.$destroy(); document.body.removeChild(_component.$el); } } }); } }); _component = Instance.$mount(); document.body.appendChild(_component.$el); }; let AdvanceViewImageModal = data => { modal(AdvanceViewImage, data); }; Vue.prototype.$AdvanceViewImageModal = params => { AdvanceViewImageModal(params); }; let IssueTypeItemModal = data => { modal(IssueTypeItem, data); }; Vue.prototype.$IssueTypeItemModal = params => { IssueTypeItemModal(params); }; let InformationItemModal = data => { modal(InformationItem, data); }; Vue.prototype.$InformationItemModal = params => { InformationItemModal(params); }; let BannerItemModal = data => { modal(BannerItem, data); }; Vue.prototype.$BannerItemModal = params => { BannerItemModal(params); }; let InfoItemModal = data => { modal(InfoItem, data); }; Vue.prototype.$InfoItemModal = params => { InfoItemModal(params); };