数通智联化工云平台
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

31 lines
894 B

import { defineComponent, inject, watch } from 'vue';
import '../../select/index.mjs';
import { selectKey } from '../../select/src/token.mjs';
var CacheOptions = defineComponent({
props: {
data: {
type: Array,
default: () => []
}
},
setup(props) {
const select = inject(selectKey);
watch(() => props.data, () => {
var _a;
props.data.forEach((item) => {
if (!select.cachedOptions.has(item.value)) {
select.cachedOptions.set(item.value, item);
}
});
const inputs = ((_a = select.selectWrapper) == null ? void 0 : _a.querySelectorAll("input")) || [];
if (!Array.from(inputs).includes(document.activeElement)) {
select.setSelected();
}
}, { flush: "post", immediate: true });
return () => void 0;
}
});
export { CacheOptions as default };
//# sourceMappingURL=cache-options.mjs.map