Vue3 对象转换
数据准备:
// 部门 hooks,实现开箱即用的效果,这里是开箱(通过 useDepartment 开箱),后面是即用
const departmentHooks = useDepartment();
departmentHooks.departmentList 的内容为:
[
{
"key": null,
"label": "中心主任室",
"value": "ALD"
},
{
"key": null,
"label": "办公室",
"value": "BGS"
}
]
对象A:departmentList 的结构
departmentList: Ref<{
key?: string | number | undefined;
label: string | number;
value: string | number;
}[]>;
需要将对象A(departmentList )转换成 对象B(departmentFilters)
对象B(departmentFilters)的结构为:
{
text: string;
value: string;
}
================================================
转换方法1:箭头函数
// 表格列筛选列表
const departmentFilters = computed(() => {return departmentHooks.departmentList.value.map((item) => {let { label, value } = item;return {text: label as string,value: value as string};});
});
转换方法2: 简化箭头函数
// 表格列筛选列表
const departmentFilters = computed(() =>departmentHooks.departmentList.value.map((item) => ({text: item.label as string,value: item.value as string}))
);
对象B(departmentFilters)的内容为:
[
{
"text": "中心主任室",
"value": "ALD"
},
{
"text": "办公室",
"value": "BGS"
}
]