diff --git a/components/tree/DirectoryTree.jsx b/components/tree/DirectoryTree.jsx index deed450a4..34f5c5007 100644 --- a/components/tree/DirectoryTree.jsx +++ b/components/tree/DirectoryTree.jsx @@ -66,7 +66,7 @@ export default { // Expanded keys if (defaultExpandAll) { if (props.treeData) { - state._expandedKeys = getFullKeyListByTreeData(props.treeData); + state._expandedKeys = getFullKeyListByTreeData(props.treeData,props.replaceFields); } else { state._expandedKeys = getFullKeyList(children); } diff --git a/components/tree/util.js b/components/tree/util.js index 4244d7ae3..fd0a97051 100644 --- a/components/tree/util.js +++ b/components/tree/util.js @@ -88,13 +88,14 @@ export function convertDirectoryKeysToNodes(rootChildren, keys) { return nodes; } -export function getFullKeyListByTreeData(treeData) { +export function getFullKeyListByTreeData(treeData,replaceFields) { let keys = []; + const {key='key',children='children'} = replaceFields (treeData || []).forEach(item => { - keys.push(item.key); - if (item.children) { - keys = [...keys, ...getFullKeyListByTreeData(item.children)]; + keys.push(item[key]); + if (item[children]) { + keys = [...keys, ...getFullKeyListByTreeData(item[children],replaceFields)]; } }); return keys;