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
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);
|
|
}
|
|
}
|