UNPKG

yanzhen-design-vue

Version:

58 lines (57 loc) 2.11 kB
import { defineComponent, mergeModels, toRefs, useModel, ref, watchEffect, toValue, openBlock, createBlock, mergeProps, unref } from "vue"; import { provideApiConfig } from "@yanzhen-lowcode/core"; import { cascadeProps, cascadeApis } from "./cascade.mjs"; import "./HydrateCascade.vue.mjs"; import { Cascade } from "./constants/apis.mjs"; import _sfc_main$1 from "./HydrateCascade.vue2.mjs"; const _sfc_main = /* @__PURE__ */ defineComponent({ __name: "cascade", props: /* @__PURE__ */ mergeModels(cascadeProps, { "value": { default: void 0 }, "valueModifiers": {} }), emits: /* @__PURE__ */ mergeModels(["onChange"], ["update:value"]), setup(__props, { emit: __emit }) { const props = __props; const { cascadeAdvancedConfig } = toRefs(props); const _api = provideApiConfig(props); const emit = __emit; const modelValue = useModel(__props, "value"); const treeData = ref([]); const fetchData = async (id) => { var _a; if (!id) { return; } const params = { id, detail: true }; const { errcode, result } = await ((_a = _api == null ? void 0 : _api.value) == null ? void 0 : _a.request( { data: params }, cascadeApis[Cascade.Options] )); if (errcode === "0") { treeData.value = result.optionDataTree; } }; watchEffect(() => { var _a; const optionSetId = (_a = toValue(cascadeAdvancedConfig)) == null ? void 0 : _a.optionSetId; fetchData(optionSetId); }); return (_ctx, _cache) => { var _a; return openBlock(), createBlock(_sfc_main$1, mergeProps({ modelValue: modelValue.value, "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => modelValue.value = $event), mode: ((_a = unref(cascadeAdvancedConfig)) == null ? void 0 : _a.selectStyle) === "TREE" ? "tree" : "cascade", options: treeData.value, "filter-options": _ctx.filterOptions }, _ctx.$attrs), null, 16, ["modelValue", "mode", "options", "filter-options"]); }; } }); export { _sfc_main as default };