UNPKG

vxe-table-demonic

Version:

一个基于 vue 的 PC 端表单/表格组件,支持增删改查、虚拟列表、虚拟树、懒加载、快捷菜单、数据校验、树形结构、打印导出、表单渲染、数据分页、弹窗、自定义模板、渲染器、JSON 配置式...

59 lines (58 loc) 1.8 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _vue = require("vue"); var _log = require("../../tools/log"); var _util = require("./util"); var _formItem = require("./form-item"); var _default = (0, _vue.defineComponent)({ name: 'VxeFormGather', props: _formItem.formItemProps, setup: function (props, _a) { var slots = _a.slots; var refElem = (0, _vue.ref)(); var $xeform = (0, _vue.inject)('$xeform', {}); var formGather = (0, _vue.inject)('$xeformgather', null); var defaultSlot = slots.default; var formItem = (0, _vue.reactive)((0, _util.createItem)($xeform, props)); var xeformitem = { formItem: formItem }; var xeformiteminfo = { itemConfig: formItem }; formItem.children = []; (0, _vue.provide)('$xeformiteminfo', xeformiteminfo); (0, _vue.provide)('$xeformgather', xeformitem); (0, _vue.provide)('$xeformitem', null); (0, _util.watchItem)(props, formItem); (0, _vue.onMounted)(function () { (0, _util.assemItem)($xeform, refElem.value, formItem, formGather); }); (0, _vue.onUnmounted)(function () { (0, _util.destroyItem)($xeform, formItem); }); if (process.env.NODE_ENV === 'development') { (0, _vue.nextTick)(function () { if ($xeform && $xeform.props.customLayout) { (0, _log.errLog)('vxe.error.errConflicts', ['custom-layout', '<form-gather ...>']); } }); } var renderVN = function () { return (0, _vue.h)('div', { ref: refElem }, defaultSlot ? defaultSlot() : []); }; var $xeformgather = { renderVN: renderVN }; return $xeformgather; }, render: function () { return this.renderVN(); } }); exports.default = _default;