@form-create/element-ui 3.2.1 → 3.2.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/form-create.esm.js +241 -49
- package/dist/form-create.esm.min.js +2 -2
- package/dist/form-create.js +241 -49
- package/dist/form-create.min.js +2 -2
- package/package.json +3 -3
package/dist/form-create.esm.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* @form-create/element-ui v3.2.
|
|
2
|
+
* @form-create/element-ui v3.2.3
|
|
3
3
|
* (c) 2018-2024 xaboy
|
|
4
4
|
* Github https://github.com/xaboy/form-create
|
|
5
5
|
* Released under the MIT License.
|
|
@@ -2101,6 +2101,7 @@ function $FormCreate(FormCreate, components, directives) {
|
|
|
2101
2101
|
}
|
|
2102
2102
|
},
|
|
2103
2103
|
extendOption: Boolean,
|
|
2104
|
+
driver: String,
|
|
2104
2105
|
modelValue: Object,
|
|
2105
2106
|
disabled: {
|
|
2106
2107
|
type: Boolean,
|
|
@@ -2217,9 +2218,15 @@ function $FormCreate(FormCreate, components, directives) {
|
|
|
2217
2218
|
var emit$form = debounce(function () {
|
|
2218
2219
|
fc.bus.$emit('$loadData.$form');
|
|
2219
2220
|
}, 100);
|
|
2221
|
+
|
|
2222
|
+
var emit$change = function emit$change(field) {
|
|
2223
|
+
fc.bus.$emit('change-$form.' + field);
|
|
2224
|
+
};
|
|
2225
|
+
|
|
2220
2226
|
onMounted(function () {
|
|
2221
2227
|
if (parent) {
|
|
2222
2228
|
fapi.top.bus.$on('$loadData.$form', emit$topForm);
|
|
2229
|
+
fapi.top.bus.$on('change', emit$change);
|
|
2223
2230
|
}
|
|
2224
2231
|
|
|
2225
2232
|
fc.mounted();
|
|
@@ -2227,6 +2234,7 @@ function $FormCreate(FormCreate, components, directives) {
|
|
|
2227
2234
|
onBeforeUnmount(function () {
|
|
2228
2235
|
if (parent) {
|
|
2229
2236
|
fapi.top.bus.$off('$loadData.$form', emit$topForm);
|
|
2237
|
+
fapi.top.bus.$off('change', emit$change);
|
|
2230
2238
|
}
|
|
2231
2239
|
|
|
2232
2240
|
styleEl && document.head.removeChild(styleEl);
|
|
@@ -2868,9 +2876,9 @@ function fetch$1(option) {
|
|
|
2868
2876
|
});
|
|
2869
2877
|
xhr.send(formData);
|
|
2870
2878
|
}
|
|
2871
|
-
function asyncFetch(config) {
|
|
2879
|
+
function asyncFetch(config, _fetch) {
|
|
2872
2880
|
return new Promise(function (resolve, reject) {
|
|
2873
|
-
fetch$1(_objectSpread2(_objectSpread2({}, config), {}, {
|
|
2881
|
+
(_fetch || fetch$1)(_objectSpread2(_objectSpread2({}, config), {}, {
|
|
2874
2882
|
onSuccess: function onSuccess(res) {
|
|
2875
2883
|
var fn = function fn(v) {
|
|
2876
2884
|
return v;
|
|
@@ -3431,8 +3439,24 @@ function Api(h) {
|
|
|
3431
3439
|
bus: h.bus,
|
|
3432
3440
|
fetch: function fetch(opt) {
|
|
3433
3441
|
return new Promise(function (resolve, reject) {
|
|
3442
|
+
opt = deepCopy(opt);
|
|
3443
|
+
opt = h.loadFetchVar(opt);
|
|
3434
3444
|
h.beforeFetch(opt).then(function () {
|
|
3435
|
-
return asyncFetch(opt).then(resolve)["catch"](reject);
|
|
3445
|
+
return asyncFetch(opt, h.fc.create.fetch).then(resolve)["catch"](reject);
|
|
3446
|
+
});
|
|
3447
|
+
});
|
|
3448
|
+
},
|
|
3449
|
+
watchFetch: function watchFetch(opt, callback, error) {
|
|
3450
|
+
return h.fc.watchLoadData(function (get, change) {
|
|
3451
|
+
var _opt = deepCopy(opt);
|
|
3452
|
+
|
|
3453
|
+
_opt = h.loadFetchVar(_opt, get);
|
|
3454
|
+
h.beforeFetch(_opt).then(function () {
|
|
3455
|
+
return asyncFetch(_opt, h.fc.create.fetch).then(function (res) {
|
|
3456
|
+
callback && callback(res, change);
|
|
3457
|
+
})["catch"](function (e) {
|
|
3458
|
+
error && error(e);
|
|
3459
|
+
});
|
|
3436
3460
|
});
|
|
3437
3461
|
});
|
|
3438
3462
|
},
|
|
@@ -3442,6 +3466,9 @@ function Api(h) {
|
|
|
3442
3466
|
setData: function setData(id, data) {
|
|
3443
3467
|
return h.fc.setData(id, data);
|
|
3444
3468
|
},
|
|
3469
|
+
refreshData: function refreshData(id) {
|
|
3470
|
+
return h.fc.refreshData(id);
|
|
3471
|
+
},
|
|
3445
3472
|
helper: {
|
|
3446
3473
|
tidyFields: tidyFields,
|
|
3447
3474
|
props: props
|
|
@@ -3803,7 +3830,7 @@ function useRender$1(Render) {
|
|
|
3803
3830
|
return vn;
|
|
3804
3831
|
},
|
|
3805
3832
|
getModelField: function getModelField(ctx) {
|
|
3806
|
-
return ctx.
|
|
3833
|
+
return ctx.prop.modelField || ctx.parser.modelField || this.fc.modelFields[this.vNode.aliasMap[ctx.type]] || this.fc.modelFields[ctx.type] || this.fc.modelFields[ctx.originType] || 'modelValue';
|
|
3807
3834
|
},
|
|
3808
3835
|
isFragment: function isFragment(ctx) {
|
|
3809
3836
|
return ctx.type === 'fragment' || ctx.type === 'template';
|
|
@@ -3937,10 +3964,18 @@ function useRender$1(Render) {
|
|
|
3937
3964
|
},
|
|
3938
3965
|
defaultRender: function defaultRender(ctx, children) {
|
|
3939
3966
|
var prop = ctx.prop;
|
|
3940
|
-
|
|
3967
|
+
|
|
3968
|
+
if (prop.component) {
|
|
3969
|
+
if (typeof prop.component === 'string') {
|
|
3970
|
+
return this.vNode.make(prop.component, prop, children);
|
|
3971
|
+
} else {
|
|
3972
|
+
return this.vNode.makeComponent(prop.component, prop, children);
|
|
3973
|
+
}
|
|
3974
|
+
}
|
|
3975
|
+
|
|
3941
3976
|
if (this.vNode[ctx.type]) return this.vNode[ctx.type](prop, children);
|
|
3942
3977
|
if (this.vNode[ctx.originType]) return this.vNode[ctx.originType](prop, children);
|
|
3943
|
-
return this.vNode.make(lower(
|
|
3978
|
+
return this.vNode.make(lower(prop.type), prop, children);
|
|
3944
3979
|
},
|
|
3945
3980
|
renderRule: function renderRule(rule, children, origin) {
|
|
3946
3981
|
var _this9 = this;
|
|
@@ -4137,7 +4172,9 @@ function useInject(Handler) {
|
|
|
4137
4172
|
var _this3 = this;
|
|
4138
4173
|
|
|
4139
4174
|
if (str && typeof str === 'string' && str.indexOf('{{') > -1 && str.indexOf('}}') > -1) {
|
|
4175
|
+
var tmp = str;
|
|
4140
4176
|
var vars = extractVar(str);
|
|
4177
|
+
var lastVal;
|
|
4141
4178
|
vars.forEach(function (v) {
|
|
4142
4179
|
var split = v.split('||');
|
|
4143
4180
|
var field = split[0].trim();
|
|
@@ -4145,9 +4182,14 @@ function useInject(Handler) {
|
|
|
4145
4182
|
if (field) {
|
|
4146
4183
|
var def = (split[1] || '').trim();
|
|
4147
4184
|
var val = get ? get(field, def) : _this3.fc.getLoadData(field, def);
|
|
4185
|
+
lastVal = val;
|
|
4148
4186
|
str = str.replaceAll("{{".concat(v, "}}"), val == null ? '' : val);
|
|
4149
4187
|
}
|
|
4150
4188
|
});
|
|
4189
|
+
|
|
4190
|
+
if (vars.length === 1 && tmp === "{{".concat(vars[0], "}}")) {
|
|
4191
|
+
return lastVal;
|
|
4192
|
+
}
|
|
4151
4193
|
}
|
|
4152
4194
|
|
|
4153
4195
|
return str;
|
|
@@ -5111,7 +5153,19 @@ function useInput(Handler) {
|
|
|
5111
5153
|
var _this2 = this;
|
|
5112
5154
|
|
|
5113
5155
|
var data = reactive({});
|
|
5114
|
-
this.fields()
|
|
5156
|
+
var fields = this.fields();
|
|
5157
|
+
|
|
5158
|
+
if (this.options.appendValue !== false) {
|
|
5159
|
+
Object.keys(this.appendData).reduce(function (initial, field) {
|
|
5160
|
+
if (fields.indexOf(field) === -1) {
|
|
5161
|
+
initial[field] = toRef(_this2.appendData, field);
|
|
5162
|
+
}
|
|
5163
|
+
|
|
5164
|
+
return initial;
|
|
5165
|
+
}, data);
|
|
5166
|
+
}
|
|
5167
|
+
|
|
5168
|
+
fields.reduce(function (initial, field) {
|
|
5115
5169
|
var ctx = _this2.getCtx(field);
|
|
5116
5170
|
|
|
5117
5171
|
initial[field] = toRef(ctx.rule, 'value');
|
|
@@ -5152,7 +5206,7 @@ function useInput(Handler) {
|
|
|
5152
5206
|
return this.deferSyncFn.sync = true;
|
|
5153
5207
|
}
|
|
5154
5208
|
|
|
5155
|
-
this.vm.setupState.updateValue(_objectSpread2(
|
|
5209
|
+
this.vm.setupState.updateValue(_objectSpread2({}, this.form));
|
|
5156
5210
|
},
|
|
5157
5211
|
isChange: function isChange(ctx, value) {
|
|
5158
5212
|
return JSON.stringify(this.getFormData(ctx), strFn) !== JSON.stringify(value, strFn);
|
|
@@ -5224,9 +5278,17 @@ var BaseParser = {
|
|
|
5224
5278
|
},
|
|
5225
5279
|
mounted: function mounted(ctx) {},
|
|
5226
5280
|
render: function render(children, ctx) {
|
|
5281
|
+
if (ctx.$handle.fc.renderDriver && ctx.$handle.fc.renderDriver.defaultRender) {
|
|
5282
|
+
return ctx.$handle.fc.renderDriver.defaultRender(ctx, children);
|
|
5283
|
+
}
|
|
5284
|
+
|
|
5227
5285
|
return ctx.$render.defaultRender(ctx, children);
|
|
5228
5286
|
},
|
|
5229
5287
|
preview: function preview(children, ctx) {
|
|
5288
|
+
if (ctx.$handle.fc.renderDriver && ctx.$handle.fc.renderDriver.defaultPreview) {
|
|
5289
|
+
return ctx.$handle.fc.renderDriver.defaultPreview(ctx, children);
|
|
5290
|
+
}
|
|
5291
|
+
|
|
5230
5292
|
return this.render(children, ctx);
|
|
5231
5293
|
},
|
|
5232
5294
|
mergeProp: function mergeProp(ctx) {}
|
|
@@ -5285,6 +5347,18 @@ function useContext(Handler) {
|
|
|
5285
5347
|
},
|
|
5286
5348
|
getParser: function getParser(ctx) {
|
|
5287
5349
|
var list = this.fc.parsers;
|
|
5350
|
+
var renderDriver = this.fc.renderDriver;
|
|
5351
|
+
|
|
5352
|
+
if (renderDriver) {
|
|
5353
|
+
var _list = renderDriver.parsers || {};
|
|
5354
|
+
|
|
5355
|
+
var parser = _list[ctx.originType] || _list[toCase(ctx.type)] || _list[ctx.trueType];
|
|
5356
|
+
|
|
5357
|
+
if (parser) {
|
|
5358
|
+
return parser;
|
|
5359
|
+
}
|
|
5360
|
+
}
|
|
5361
|
+
|
|
5288
5362
|
return list[ctx.originType] || list[toCase(ctx.type)] || list[ctx.trueType] || BaseParser;
|
|
5289
5363
|
},
|
|
5290
5364
|
bindParser: function bindParser(ctx) {
|
|
@@ -5482,7 +5556,7 @@ function useContext(Handler) {
|
|
|
5482
5556
|
|
|
5483
5557
|
this.deferSyncValue(function () {
|
|
5484
5558
|
o && o.forEach(function (child) {
|
|
5485
|
-
if ((n || []).indexOf(child) === -1 && child && !is.String(child) && child.__fc__ && child.__fc__.parent === ctx
|
|
5559
|
+
if ((n || []).indexOf(child) === -1 && child && !is.String(child) && child.__fc__ && child.__fc__.parent === ctx) {
|
|
5486
5560
|
_this2.rmCtx(child.__fc__);
|
|
5487
5561
|
}
|
|
5488
5562
|
});
|
|
@@ -6033,6 +6107,17 @@ extend(Manager.prototype, {
|
|
|
6033
6107
|
}), opt, this.mergeOptionsRule);
|
|
6034
6108
|
},
|
|
6035
6109
|
updateOptions: function updateOptions(options) {
|
|
6110
|
+
var _this3 = this;
|
|
6111
|
+
|
|
6112
|
+
if (this.$handle.fc.renderDriver && this.$handle.fc.renderDriver.updateOptions) {
|
|
6113
|
+
invoke(function () {
|
|
6114
|
+
_this3.$handle.fc.renderDriver.updateOptions(options, {
|
|
6115
|
+
handle: _this3.$handle,
|
|
6116
|
+
api: _this3.$handle.api
|
|
6117
|
+
});
|
|
6118
|
+
});
|
|
6119
|
+
}
|
|
6120
|
+
|
|
6036
6121
|
this.options = this.mergeOptions([options], this.getDefaultOptions());
|
|
6037
6122
|
this.update();
|
|
6038
6123
|
},
|
|
@@ -6070,7 +6155,18 @@ var loadData = function loadData(fc) {
|
|
|
6070
6155
|
value = deepCopy(value);
|
|
6071
6156
|
}
|
|
6072
6157
|
|
|
6073
|
-
|
|
6158
|
+
var _rule = attr.modify ? rule : inject.getProp();
|
|
6159
|
+
|
|
6160
|
+
if (attr.to === 'child') {
|
|
6161
|
+
if (_rule.children) {
|
|
6162
|
+
_rule.children[0] = value;
|
|
6163
|
+
} else {
|
|
6164
|
+
_rule.children = [value];
|
|
6165
|
+
}
|
|
6166
|
+
} else {
|
|
6167
|
+
deepSet(_rule, attr.to || 'options', value);
|
|
6168
|
+
}
|
|
6169
|
+
|
|
6074
6170
|
api.sync(rule);
|
|
6075
6171
|
}, attr.wait || 300));
|
|
6076
6172
|
|
|
@@ -6199,7 +6295,11 @@ var fetch = function fetch(fc) {
|
|
|
6199
6295
|
}
|
|
6200
6296
|
};
|
|
6201
6297
|
|
|
6202
|
-
fetchAttr._fn[inject.id] = fc.watchLoadData(debounce(function (get) {
|
|
6298
|
+
fetchAttr._fn[inject.id] = fc.watchLoadData(debounce(function (get, change) {
|
|
6299
|
+
if (change && option.watch === false) {
|
|
6300
|
+
return fetchAttr._fn[inject.id]();
|
|
6301
|
+
}
|
|
6302
|
+
|
|
6203
6303
|
var _option = fc.$handle.loadFetchVar(deepCopy(option), get);
|
|
6204
6304
|
|
|
6205
6305
|
var config = _objectSpread2(_objectSpread2({
|
|
@@ -6257,7 +6357,7 @@ var fetch = function fetch(fc) {
|
|
|
6257
6357
|
});
|
|
6258
6358
|
});
|
|
6259
6359
|
});
|
|
6260
|
-
}, option.wait ||
|
|
6360
|
+
}, option.wait || 600));
|
|
6261
6361
|
}
|
|
6262
6362
|
|
|
6263
6363
|
var fetchAttr = {
|
|
@@ -6409,6 +6509,7 @@ function FormCreateFactory(config) {
|
|
|
6409
6509
|
var parsers = {};
|
|
6410
6510
|
var directives = {};
|
|
6411
6511
|
var modelFields = {};
|
|
6512
|
+
var drivers = {};
|
|
6412
6513
|
var useApps = [];
|
|
6413
6514
|
var listener = [];
|
|
6414
6515
|
var extendApiFn = [config.extendApi];
|
|
@@ -6567,18 +6668,36 @@ function FormCreateFactory(config) {
|
|
|
6567
6668
|
formulas[name] = fn;
|
|
6568
6669
|
}
|
|
6569
6670
|
|
|
6570
|
-
function
|
|
6571
|
-
|
|
6572
|
-
|
|
6573
|
-
|
|
6574
|
-
|
|
6671
|
+
function setDriver(name, driver) {
|
|
6672
|
+
var parent = drivers[name] || {};
|
|
6673
|
+
var parsers = parent.parsers || {};
|
|
6674
|
+
|
|
6675
|
+
if (driver.parsers) {
|
|
6676
|
+
Object.keys(driver.parsers).forEach(function (k) {
|
|
6677
|
+
parsers[k] = setPrototypeOf(driver.parsers[k], BaseParser);
|
|
6575
6678
|
});
|
|
6679
|
+
}
|
|
6680
|
+
|
|
6681
|
+
driver.name = name;
|
|
6682
|
+
drivers[name] = _objectSpread2(_objectSpread2(_objectSpread2({}, parent), driver), {}, {
|
|
6683
|
+
parsers: parsers
|
|
6576
6684
|
});
|
|
6577
6685
|
}
|
|
6578
6686
|
|
|
6687
|
+
function refreshData(id) {
|
|
6688
|
+
if (id) {
|
|
6689
|
+
Object.keys(instance).forEach(function (v) {
|
|
6690
|
+
var apis = Array.isArray(instance[v]) ? instance[v] : [instance[v]];
|
|
6691
|
+
apis.forEach(function (that) {
|
|
6692
|
+
that.bus.$emit('$loadData.' + id);
|
|
6693
|
+
});
|
|
6694
|
+
});
|
|
6695
|
+
}
|
|
6696
|
+
}
|
|
6697
|
+
|
|
6579
6698
|
function setData(id, data) {
|
|
6580
6699
|
loadData[id] = data;
|
|
6581
|
-
|
|
6700
|
+
refreshData(id);
|
|
6582
6701
|
}
|
|
6583
6702
|
|
|
6584
6703
|
function setDataDriver(id, data) {
|
|
@@ -6622,7 +6741,7 @@ function FormCreateFactory(config) {
|
|
|
6622
6741
|
|
|
6623
6742
|
function removeData(id) {
|
|
6624
6743
|
delete loadData[id];
|
|
6625
|
-
|
|
6744
|
+
refreshData(id);
|
|
6626
6745
|
}
|
|
6627
6746
|
|
|
6628
6747
|
function on(name, callback) {
|
|
@@ -6652,13 +6771,15 @@ function FormCreateFactory(config) {
|
|
|
6652
6771
|
components: components,
|
|
6653
6772
|
directives: directives
|
|
6654
6773
|
},
|
|
6774
|
+
drivers: drivers,
|
|
6775
|
+
renderDriver: null,
|
|
6655
6776
|
setData: setData,
|
|
6656
6777
|
getData: getData,
|
|
6657
|
-
|
|
6778
|
+
refreshData: refreshData,
|
|
6658
6779
|
loadData: loadData,
|
|
6659
6780
|
CreateNode: CreateNode,
|
|
6660
6781
|
bus: new Mitt(),
|
|
6661
|
-
unwatch:
|
|
6782
|
+
unwatch: [],
|
|
6662
6783
|
options: ref({}),
|
|
6663
6784
|
extendApiFn: extendApiFn,
|
|
6664
6785
|
fetchCache: new WeakMap()
|
|
@@ -6695,7 +6816,7 @@ function FormCreateFactory(config) {
|
|
|
6695
6816
|
var _this2 = this;
|
|
6696
6817
|
|
|
6697
6818
|
if (this.isSub()) {
|
|
6698
|
-
this.unwatch
|
|
6819
|
+
this.unwatch.push(watch(function () {
|
|
6699
6820
|
return _this2.vm.setupState.parent.setupState.fc.options.value;
|
|
6700
6821
|
}, function () {
|
|
6701
6822
|
_this2.initOptions();
|
|
@@ -6703,9 +6824,11 @@ function FormCreateFactory(config) {
|
|
|
6703
6824
|
_this2.$handle.api.refresh();
|
|
6704
6825
|
}, {
|
|
6705
6826
|
deep: true
|
|
6706
|
-
});
|
|
6827
|
+
}));
|
|
6707
6828
|
}
|
|
6708
6829
|
|
|
6830
|
+
var driver = this.vm.setupState.parent ? this.vm.setupState.parent.setupState.fc.renderDriver : this.vm.props.driver;
|
|
6831
|
+
this.renderDriver = this.drivers[driver];
|
|
6709
6832
|
this.initOptions();
|
|
6710
6833
|
this.$handle.init();
|
|
6711
6834
|
},
|
|
@@ -6752,13 +6875,26 @@ function FormCreateFactory(config) {
|
|
|
6752
6875
|
_this3.fetchCache.set(option, res);
|
|
6753
6876
|
}
|
|
6754
6877
|
|
|
6755
|
-
_this3.bus.$emit('$loadData.$globalData');
|
|
6878
|
+
_this3.bus.$emit('$loadData.$globalData.' + key);
|
|
6756
6879
|
} else {
|
|
6757
6880
|
_this3.fetchCache["delete"](option);
|
|
6758
6881
|
}
|
|
6759
|
-
}, option.wait ||
|
|
6882
|
+
}, option.wait || 600);
|
|
6883
|
+
|
|
6884
|
+
var _emit = function _emit(data) {
|
|
6885
|
+
_this3.fetchCache.set(option, {
|
|
6886
|
+
status: true,
|
|
6887
|
+
data: data
|
|
6888
|
+
});
|
|
6889
|
+
|
|
6890
|
+
_this3.bus.$emit('$loadData.$globalData.' + key);
|
|
6891
|
+
};
|
|
6760
6892
|
|
|
6761
6893
|
var callback = function callback(get, change) {
|
|
6894
|
+
if (change && option.watch === false) {
|
|
6895
|
+
return unwatch();
|
|
6896
|
+
}
|
|
6897
|
+
|
|
6762
6898
|
if (change) {
|
|
6763
6899
|
reload();
|
|
6764
6900
|
return;
|
|
@@ -6767,16 +6903,42 @@ function FormCreateFactory(config) {
|
|
|
6767
6903
|
var options = _this3.$handle.loadFetchVar(copy$1(option), get);
|
|
6768
6904
|
|
|
6769
6905
|
_this3.$handle.api.fetch(options).then(function (res) {
|
|
6770
|
-
|
|
6771
|
-
|
|
6772
|
-
|
|
6773
|
-
});
|
|
6774
|
-
|
|
6775
|
-
_this3.bus.$emit('$loadData.$globalData');
|
|
6906
|
+
_emit(res);
|
|
6907
|
+
})["catch"](function (e) {
|
|
6908
|
+
_emit(null);
|
|
6776
6909
|
});
|
|
6777
6910
|
};
|
|
6778
6911
|
|
|
6779
6912
|
var unwatch = this.watchLoadData(callback);
|
|
6913
|
+
this.unwatch.push(unwatch);
|
|
6914
|
+
return val;
|
|
6915
|
+
}
|
|
6916
|
+
}
|
|
6917
|
+
},
|
|
6918
|
+
globalVarDriver: function globalVarDriver(id) {
|
|
6919
|
+
var _this4 = this;
|
|
6920
|
+
|
|
6921
|
+
var split = id.split('.');
|
|
6922
|
+
var key = split.shift();
|
|
6923
|
+
var option = this.options.value.globalVariable && this.options.value.globalVariable[key];
|
|
6924
|
+
|
|
6925
|
+
if (option) {
|
|
6926
|
+
var handle = is.Function(option) ? option : option.handle;
|
|
6927
|
+
|
|
6928
|
+
if (handle) {
|
|
6929
|
+
var val;
|
|
6930
|
+
var unwatch = this.watchLoadData(function (get, change) {
|
|
6931
|
+
if (change) {
|
|
6932
|
+
unwatch();
|
|
6933
|
+
|
|
6934
|
+
_this4.bus.$emit('$loadData.$var.' + key);
|
|
6935
|
+
}
|
|
6936
|
+
|
|
6937
|
+
val = invoke(function () {
|
|
6938
|
+
return handle(get, _this4.$handle.api);
|
|
6939
|
+
});
|
|
6940
|
+
});
|
|
6941
|
+
this.unwatch.push(unwatch);
|
|
6780
6942
|
return val;
|
|
6781
6943
|
}
|
|
6782
6944
|
}
|
|
@@ -6797,6 +6959,9 @@ function FormCreateFactory(config) {
|
|
|
6797
6959
|
} else if (key === '$globalData') {
|
|
6798
6960
|
val = this.globalDataDriver(split.join('.'));
|
|
6799
6961
|
split = [];
|
|
6962
|
+
} else if (key === '$var') {
|
|
6963
|
+
val = this.globalVarDriver(split.join('.'));
|
|
6964
|
+
split = [];
|
|
6800
6965
|
} else {
|
|
6801
6966
|
val = getData(id, def);
|
|
6802
6967
|
split = [];
|
|
@@ -6807,11 +6972,10 @@ function FormCreateFactory(config) {
|
|
|
6807
6972
|
}
|
|
6808
6973
|
}
|
|
6809
6974
|
|
|
6810
|
-
console.log(id, val);
|
|
6811
6975
|
return val == null || val === '' ? def : val;
|
|
6812
6976
|
},
|
|
6813
6977
|
watchLoadData: function watchLoadData(fn) {
|
|
6814
|
-
var
|
|
6978
|
+
var _this5 = this;
|
|
6815
6979
|
|
|
6816
6980
|
var unwatch = {};
|
|
6817
6981
|
|
|
@@ -6826,13 +6990,14 @@ function FormCreateFactory(config) {
|
|
|
6826
6990
|
return unwatch[id].val;
|
|
6827
6991
|
}
|
|
6828
6992
|
|
|
6829
|
-
var val =
|
|
6830
|
-
|
|
6831
|
-
var key = id.split('.').shift();
|
|
6993
|
+
var val = _this5.getLoadData(id, def);
|
|
6832
6994
|
|
|
6833
|
-
var
|
|
6995
|
+
var split = id.split('.');
|
|
6996
|
+
var key = split.shift();
|
|
6997
|
+
var key2 = split.shift() || '';
|
|
6998
|
+
var callback = debounce(function () {
|
|
6834
6999
|
if (key !== id) {
|
|
6835
|
-
var temp =
|
|
7000
|
+
var temp = _this5.getLoadData(id, def);
|
|
6836
7001
|
|
|
6837
7002
|
if (JSON.stringify(temp) !== JSON.stringify(unwatch[id].val)) {
|
|
6838
7003
|
unwatch[id].val = temp;
|
|
@@ -6841,13 +7006,21 @@ function FormCreateFactory(config) {
|
|
|
6841
7006
|
} else {
|
|
6842
7007
|
run(true);
|
|
6843
7008
|
}
|
|
6844
|
-
};
|
|
7009
|
+
}, 0);
|
|
7010
|
+
|
|
7011
|
+
_this5.bus.$on('$loadData.' + key, callback);
|
|
6845
7012
|
|
|
6846
|
-
|
|
7013
|
+
if (key2) {
|
|
7014
|
+
_this5.bus.$on('$loadData.' + key + '.' + key2, callback);
|
|
7015
|
+
}
|
|
6847
7016
|
|
|
6848
7017
|
unwatch[id] = {
|
|
6849
7018
|
fn: function fn() {
|
|
6850
|
-
|
|
7019
|
+
_this5.bus.$off('$loadData.' + key, callback);
|
|
7020
|
+
|
|
7021
|
+
if (key2) {
|
|
7022
|
+
_this5.bus.$off('$loadData.' + key + '.' + key2, callback);
|
|
7023
|
+
}
|
|
6851
7024
|
},
|
|
6852
7025
|
val: val
|
|
6853
7026
|
};
|
|
@@ -6855,12 +7028,16 @@ function FormCreateFactory(config) {
|
|
|
6855
7028
|
};
|
|
6856
7029
|
|
|
6857
7030
|
run(false);
|
|
6858
|
-
|
|
7031
|
+
|
|
7032
|
+
var un = function un() {
|
|
6859
7033
|
Object.keys(unwatch).forEach(function (k) {
|
|
6860
7034
|
return unwatch[k].fn();
|
|
6861
7035
|
});
|
|
6862
7036
|
unwatch = {};
|
|
6863
7037
|
};
|
|
7038
|
+
|
|
7039
|
+
this.unwatch.push(un);
|
|
7040
|
+
return un;
|
|
6864
7041
|
},
|
|
6865
7042
|
isSub: function isSub() {
|
|
6866
7043
|
return this.vm.setupState.parent && this.vm.props.extendOption;
|
|
@@ -6912,7 +7089,7 @@ function FormCreateFactory(config) {
|
|
|
6912
7089
|
this.$handle.mounted();
|
|
6913
7090
|
},
|
|
6914
7091
|
unmount: function unmount() {
|
|
6915
|
-
var
|
|
7092
|
+
var _this6 = this;
|
|
6916
7093
|
|
|
6917
7094
|
if (this.name) {
|
|
6918
7095
|
if (this.inFor) {
|
|
@@ -6924,16 +7101,19 @@ function FormCreateFactory(config) {
|
|
|
6924
7101
|
}
|
|
6925
7102
|
|
|
6926
7103
|
listener.forEach(function (item) {
|
|
6927
|
-
|
|
7104
|
+
_this6.bus.$off(item.name, item.callback);
|
|
7105
|
+
});
|
|
7106
|
+
this.unwatch.forEach(function (fn) {
|
|
7107
|
+
return fn();
|
|
6928
7108
|
});
|
|
6929
|
-
this.unwatch
|
|
7109
|
+
this.unwatch = [];
|
|
6930
7110
|
this.$handle.reloadRule([]);
|
|
6931
7111
|
},
|
|
6932
7112
|
updated: function updated() {
|
|
6933
|
-
var
|
|
7113
|
+
var _this7 = this;
|
|
6934
7114
|
|
|
6935
7115
|
this.$handle.bindNextTick(function () {
|
|
6936
|
-
return
|
|
7116
|
+
return _this7.bus.$emit('next-tick', _this7.$handle.api);
|
|
6937
7117
|
});
|
|
6938
7118
|
}
|
|
6939
7119
|
});
|
|
@@ -6947,11 +7127,13 @@ function FormCreateFactory(config) {
|
|
|
6947
7127
|
setDataDriver: setDataDriver,
|
|
6948
7128
|
setData: setData,
|
|
6949
7129
|
removeData: removeData,
|
|
7130
|
+
refreshData: refreshData,
|
|
6950
7131
|
maker: maker,
|
|
6951
7132
|
component: component,
|
|
6952
7133
|
directive: directive,
|
|
6953
7134
|
setModelField: setModelField,
|
|
6954
7135
|
setFormula: setFormula,
|
|
7136
|
+
setDriver: setDriver,
|
|
6955
7137
|
register: register,
|
|
6956
7138
|
$vnode: $vnode,
|
|
6957
7139
|
parser: parser,
|
|
@@ -7029,6 +7211,16 @@ function FormCreateFactory(config) {
|
|
|
7029
7211
|
|
|
7030
7212
|
var FcComponent = $form();
|
|
7031
7213
|
setPrototypeOf(FcComponent, create);
|
|
7214
|
+
Object.defineProperties(FcComponent, {
|
|
7215
|
+
fetch: {
|
|
7216
|
+
get: function get() {
|
|
7217
|
+
return create.fetch;
|
|
7218
|
+
},
|
|
7219
|
+
set: function set(val) {
|
|
7220
|
+
create.fetch = val;
|
|
7221
|
+
}
|
|
7222
|
+
}
|
|
7223
|
+
});
|
|
7032
7224
|
FcComponent.util = create;
|
|
7033
7225
|
return FcComponent;
|
|
7034
7226
|
}
|
|
@@ -7913,7 +8105,7 @@ function install(FormCreate) {
|
|
|
7913
8105
|
function elmFormCreate() {
|
|
7914
8106
|
return FormCreateFactory({
|
|
7915
8107
|
ui: 'element-ui',
|
|
7916
|
-
version: '3.2.
|
|
8108
|
+
version: '3.2.3',
|
|
7917
8109
|
manager: manager,
|
|
7918
8110
|
extendApi: extendApi,
|
|
7919
8111
|
install: install,
|