You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

74 lines
2.5 KiB

"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.DynamicApp = void 0;
exports.checkDynamic = checkDynamic;
exports.dynamicStore = exports.dynamicApp = void 0;
var _vue = _interopRequireDefault(require("vue"));
var _core = require("@vxe-ui/core");
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
var dynamicContainerElem;
var DynamicApp = exports.DynamicApp = _vue.default.extend({
data: function data() {
var modals = [];
var drawers = [];
return {
modals: modals,
drawers: drawers,
globalLoading: null,
globalWatermark: null
};
},
methods: {
renderVN: function renderVN(h) {
var VxeUIModalComponent = _core.VxeUI.getComponent('vxe-modal');
var VxeUIDrawerComponent = _core.VxeUI.getComponent('vxe-drawer');
var VxeUILoadingComponent = _core.VxeUI.getComponent('vxe-loading');
var VxeUIWatermarkComponent = _core.VxeUI.getComponent('vxe-watermark');
var modals = this.modals,
drawers = this.drawers,
globalLoading = this.globalLoading,
globalWatermark = this.globalWatermark;
return h('div', {}, [modals.length ? h('div', {
key: 1,
class: 'vxe-dynamics--modal'
}, modals.map(function (item) {
return h(VxeUIModalComponent, {
key: item.key,
props: item.props,
on: item.on
});
})) : (0, _core.renderEmptyElement)(this), drawers.length ? h('div', {
key: 2,
class: 'vxe-dynamics--drawer'
}, drawers.map(function (item) {
return h(VxeUIDrawerComponent, {
key: item.key,
props: item.props,
on: item.on
});
})) : (0, _core.renderEmptyElement)(this), globalWatermark ? h(VxeUILoadingComponent, {
key: 'gw',
props: globalWatermark
}) : (0, _core.renderEmptyElement)(this), globalLoading ? h(VxeUIWatermarkComponent, {
key: 'gl',
props: globalLoading
}) : (0, _core.renderEmptyElement)(this)]);
}
},
render: function render(h) {
return this.renderVN(h);
}
});
var dynamicApp = exports.dynamicApp = DynamicApp;
var dynamicStore = exports.dynamicStore = new DynamicApp();
function checkDynamic() {
if (!dynamicContainerElem) {
dynamicContainerElem = document.createElement('div');
dynamicContainerElem.className = 'vxe-dynamics';
document.body.appendChild(dynamicContainerElem);
dynamicStore.$mount(dynamicContainerElem);
}
}