UNPKG

wetrade-design

Version:

一款多语言支持Vue3的UI框架

39 lines (38 loc) 1.3 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.useCreateVueApp = useCreateVueApp; var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2")); var _vue = require("vue"); var _const = require("./const"); /** * 创建vue组件 * @param param0 */ function useCreateVueApp(_ref) { var key = _ref.key, props = _ref.props, componentKey = _ref.componentKey, el = _ref.el, slots = _ref.slots, vueAppInstances = _ref.vueAppInstances, extParam = _ref.extParam; var component = _const.COMPONENTS[componentKey]; if (vueAppInstances[key]) { return; } vueAppInstances[key] = (0, _vue.createApp)({ render: function render() { return (0, _vue.h)(component, (0, _objectSpread2.default)({}, props), (0, _objectSpread2.default)({}, slots)); } }); vueAppInstances[key].destroy = function () { var _vueAppInstances$key; (_vueAppInstances$key = vueAppInstances[key]) === null || _vueAppInstances$key === void 0 ? void 0 : _vueAppInstances$key.unmount(); vueAppInstances[key] = null; }; vueAppInstances[key].config.globalProperties.$props = extParam; vueAppInstances[key].mount(el); }