|
@@ -55,15 +55,31 @@ export default {
|
|
|
// },
|
|
|
// },
|
|
|
watch: {
|
|
|
- '$attrs.value': function(newVal, oldVal) {
|
|
|
- // 优化页面使用多组件时,tooltip不显示的问题
|
|
|
- const { selected } = this.$refs.select;
|
|
|
- let labelStr = selected
|
|
|
- .map((item) => (item.label ? item.label : item.value))
|
|
|
- .join(",");
|
|
|
- this.labelStr = labelStr
|
|
|
- this.isShow = (this.$refs?.select?.disabled || false) && this.labelStr?.length > 0
|
|
|
- }
|
|
|
+ "$attrs.value": {
|
|
|
+ immediate: true,
|
|
|
+ handler(newVal, oldVal) {
|
|
|
+ // 优化页面使用多组件时,tooltip不显示的问题
|
|
|
+ this.$nextTick(() => {
|
|
|
+ const selected = this.$refs.select?.selected;
|
|
|
+
|
|
|
+ let labelStr = "";
|
|
|
+ if (newVal && newVal.length > 0 && selected) {
|
|
|
+ labelStr = selected
|
|
|
+ .map((item) => (item.label ? item.label : item.value))
|
|
|
+ .join(",");
|
|
|
+ this.labelStr = labelStr;
|
|
|
+ this.isShow =
|
|
|
+ (this.$refs?.select?.disabled || false) &&
|
|
|
+ this.labelStr?.length > 0;
|
|
|
+ } else {
|
|
|
+ this.labelStr = "";
|
|
|
+ this.isShow =
|
|
|
+ (this.$refs?.select?.disabled || false) &&
|
|
|
+ this.labelStr?.length > 0;
|
|
|
+ }
|
|
|
+ });
|
|
|
+ },
|
|
|
+ },
|
|
|
},
|
|
|
methods: {
|
|
|
selectAll() {
|
|
@@ -72,11 +88,11 @@ export default {
|
|
|
.filter((item) => !item.disabled && item.value)
|
|
|
.map((item) => item.value);
|
|
|
this.$emit("input", values);
|
|
|
- this.$emit('change', values)
|
|
|
+ this.$emit("change", values);
|
|
|
},
|
|
|
onChange(val) {
|
|
|
- this.$emit('change', val)
|
|
|
- }
|
|
|
+ this.$emit("change", val);
|
|
|
+ },
|
|
|
},
|
|
|
};
|
|
|
</script>
|