优化销售台账页面:调整产品信息的转换逻辑,确保仅叶子节点可被选择,并添加禁用状态以提升用户体验
已修改1个文件
9 ■■■■■ 文件已修改
src/views/salesManagement/salesLedger/index.vue 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/salesManagement/salesLedger/index.vue
@@ -2399,15 +2399,18 @@
    }
    return null; // 没有找到节点,返回null
};
function convertIdToValue(data) {
function convertIdToValue(data, level = 0) {
    return data.map((item) => {
        const { id, children, ...rest } = item;
        const hasChildren = Array.isArray(children) && children.length > 0;
        const newItem = {
            ...rest,
            value: id, // 将 id 改为 value
            // 仅允许叶子节点被选择(有子节点的分类节点统一禁用)
            disabled: Boolean(rest?.disabled) || hasChildren,
        };
        if (children && children.length > 0) {
            newItem.children = convertIdToValue(children);
        if (hasChildren) {
            newItem.children = convertIdToValue(children, level + 1);
        }
        
        return newItem;