动态获取部门(el-tree-select)自定义键名
1 2 3 4 5 6 7 8 9 10 | <el-tree- select check-strictly size= "large" :props= "treeProps" :data= "datas.dataTree" v-model= "datas.Departmentid" :multiple= "false" placeholder= "请选择" :normalizer= "normalizer" @node-click= "handleNodeClick" /> |
const dataTree = reactive([] as any[]);
//初始化
onMounted(() => {
getDeptTree().then((data) => {
//console.log("树形选择", data);
//部门
Object.assign(dataTree, data?.Data); //赋值
//反序列
const clonData = JSON.parse(JSON.stringify(data?.Data)); //深度克隆
//console.log("深度转化", clonData);
//const bb = normalizer(clonData);
//datas.dataTree.push(bb.treeProps);
datas.dataTree.push(clonData);
});
});
//部门
const treeProps = reactive({
value: "id",
label: "name",
children: "children",
});
//自定义键名
const normalizer = (dataTree: any) => {
if (dataTree.children && !dataTree.children.length) {
delete dataTree.children;
}
return {
treeProps: {
value: dataTree.id,
label: dataTree.name,
children: dataTree.children,
},
};
};
//节点点击事件
const handleNodeClick = (data: any) => {
//console.log("节点点击事件", data);
datas.Departmentname = data.name;
datas.Departmentid = data.id;
};
const datas = reactive({
Departmentid: undefined, //部门ID(必填)
dataTree: [] as any[],
});
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南