lwx-test-ui
Version:
lwx-test-ui
63 lines (62 loc) • 1.95 kB
JavaScript
import { defineComponent as m, computed as f, ref as h, onMounted as k, resolveComponent as b, createBlock as v, openBlock as C, mergeProps as V } from "vue";
import { useGlobalProperties as g } from "../../../hooks/use-global-properties/index.js";
import { selectTreeEmits as y, selectTreeProps as P } from "./select-tree.js";
const I = /* @__PURE__ */ m({
name: "LwxSelectTree",
__name: "select-tree",
props: P,
emits: y,
setup(c, { emit: d }) {
const l = c, r = d, n = g();
function p(e) {
r("change", e);
}
function i(e) {
r("nodeChange", e);
}
const s = f({
get() {
return l.modelValue;
},
set(e) {
r("update:modelValue", e);
}
}), a = h([]);
return k(() => {
var e;
a.value = l.options, l.queryInterface && ((e = n == null ? void 0 : n.$request) == null || e.get(
l.queryInterface,
l.params
).then((o) => {
if (!l.firstValue)
a.value = o.data;
else {
const t = {};
t[l.treeProps.label] = "顶级", t[l.treeProps.value] = "0", t.children = o.data, a.value = [t];
}
}));
}), (e, o) => {
const t = b("el-tree-select");
return C(), v(t, V({
modelValue: s.value,
"onUpdate:modelValue": o[0] || (o[0] = (u) => s.value = u),
"node-key": "value",
props: e.treeProps,
data: a.value,
"expand-on-click-node": e.expandOnClickNode,
"check-strictly": e.checkStrictly,
disabled: e.disabled,
clearable: e.clearable,
filterable: e.filterable,
multiple: e.multiple
}, e.$attrs, {
placeholder: e.placeholder,
onChange: p,
onNodeClick: i
}), null, 16, ["modelValue", "props", "data", "expand-on-click-node", "check-strictly", "disabled", "clearable", "filterable", "multiple", "placeholder"]);
};
}
});
export {
I as default
};