@netang/quasar 0.1.82 → 0.1.84
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.
|
@@ -277,7 +277,11 @@ export default {
|
|
|
277
277
|
query: Object,
|
|
278
278
|
// 附加请求数据
|
|
279
279
|
data: Object,
|
|
280
|
-
//
|
|
280
|
+
// 初始加载已选数据数组
|
|
281
|
+
// 如果有数组数据, 则初始化时从数组中选取已有的数据
|
|
282
|
+
defaultLoadSelected: Array,
|
|
283
|
+
// 初始是否不加载已选数据
|
|
284
|
+
// true, 则初始时不加载数据(同时 defaultLoadSelected 无效)
|
|
281
285
|
noDefaultLoadSelected: Boolean,
|
|
282
286
|
// 更新值时不加载已选数据
|
|
283
287
|
noUpdateLoadSelected: Boolean,
|
|
@@ -330,6 +334,7 @@ export default {
|
|
|
330
334
|
* 声明事件
|
|
331
335
|
*/
|
|
332
336
|
emits: [
|
|
337
|
+
'loaded',
|
|
333
338
|
'update:modelValue',
|
|
334
339
|
'update:selected',
|
|
335
340
|
],
|
|
@@ -496,8 +501,16 @@ export default {
|
|
|
496
501
|
const selected = ref(valueToSelected(props.modelValue, true, true))
|
|
497
502
|
|
|
498
503
|
// 加载已选数据
|
|
499
|
-
|
|
500
|
-
.
|
|
504
|
+
if (
|
|
505
|
+
! props.noDefaultLoadSelected
|
|
506
|
+
&& props.defaultLoadSelected === void 0
|
|
507
|
+
) {
|
|
508
|
+
loadSelected()
|
|
509
|
+
.finally()
|
|
510
|
+
} else {
|
|
511
|
+
// 初始化加载成功
|
|
512
|
+
emit('loaded', selected.value)
|
|
513
|
+
}
|
|
501
514
|
|
|
502
515
|
// ==========【监听数据】=========================================================================================
|
|
503
516
|
|
|
@@ -677,12 +690,16 @@ export default {
|
|
|
677
690
|
// 触发更新值
|
|
678
691
|
emit('update:modelValue', _value)
|
|
679
692
|
}
|
|
693
|
+
// 初始化加载成功
|
|
694
|
+
emit('loaded', _selected)
|
|
680
695
|
return
|
|
681
696
|
}
|
|
682
697
|
}
|
|
683
698
|
|
|
684
699
|
// 触发更新已选数据
|
|
685
700
|
emit('update:selected', selected.value)
|
|
701
|
+
// 初始化加载成功
|
|
702
|
+
emit('loaded', selected.value)
|
|
686
703
|
}
|
|
687
704
|
|
|
688
705
|
/**
|
|
@@ -761,6 +778,37 @@ export default {
|
|
|
761
778
|
return val
|
|
762
779
|
}
|
|
763
780
|
|
|
781
|
+
if (
|
|
782
|
+
// 如果初始化
|
|
783
|
+
isFirst
|
|
784
|
+
// 如果初始加载已选数据方法
|
|
785
|
+
&& ! props.noDefaultLoadSelected
|
|
786
|
+
// 如果有初始加载已选数据数组
|
|
787
|
+
&& props.defaultLoadSelected !== void 0
|
|
788
|
+
&& $n_isValidArray(props.defaultLoadSelected)
|
|
789
|
+
) {
|
|
790
|
+
// 将值转为数组
|
|
791
|
+
val = props.valueType === 'string' ? $n_split(val, props.valueSeparator) : val
|
|
792
|
+
|
|
793
|
+
// 如果是有效数组
|
|
794
|
+
if ($n_isValidArray(val)) {
|
|
795
|
+
val = val.filter(e => $n_isValidValue(e))
|
|
796
|
+
if (val.length) {
|
|
797
|
+
const _selected = []
|
|
798
|
+
for (const item of props.defaultLoadSelected) {
|
|
799
|
+
if (
|
|
800
|
+
$n_has(item, props.valueKey)
|
|
801
|
+
&& $n_indexOf(val, item[props.valueKey]) > -1
|
|
802
|
+
) {
|
|
803
|
+
_selected.push($n_cloneDeep(item))
|
|
804
|
+
}
|
|
805
|
+
}
|
|
806
|
+
|
|
807
|
+
return _selected
|
|
808
|
+
}
|
|
809
|
+
}
|
|
810
|
+
}
|
|
811
|
+
|
|
764
812
|
if (
|
|
765
813
|
// 非初始化
|
|
766
814
|
! isFirst
|