diff --git a/packages/@react-stately/data/src/useTreeData.ts b/packages/@react-stately/data/src/useTreeData.ts index c6feaf8ab5c..7da3631fb57 100644 --- a/packages/@react-stately/data/src/useTreeData.ts +++ b/packages/@react-stately/data/src/useTreeData.ts @@ -123,7 +123,7 @@ export function useTreeData(options: TreeOptions): TreeData initialItems = [], initialSelectedKeys, getKey = (item: any) => item.id || item.key, - getChildren = (item: any) => item.children || [] + getChildren = (item: any) => item.children } = options; let map = useMemo(() => new Map>(), []); @@ -133,7 +133,7 @@ export function useTreeData(options: TreeOptions): TreeData let [items, setItems] = useState(initialNodes); let [selectedKeys, setSelectedKeys] = useState(new Set(initialSelectedKeys || [])); - function buildTree(initialItems: T[], parentKey?: Key | null) { + function buildTree(initialItems: T[] = [], parentKey?: Key | null) { return initialItems.map(item => { let node: TreeNode = { key: getKey(item), diff --git a/packages/@react-stately/data/test/useTreeData.test.js b/packages/@react-stately/data/test/useTreeData.test.js index 49bd45b3386..61a48671439 100644 --- a/packages/@react-stately/data/test/useTreeData.test.js +++ b/packages/@react-stately/data/test/useTreeData.test.js @@ -31,7 +31,7 @@ const initial = [ ]; let getKey = (item) => item.name; -let getChildren = (item) => item.children || []; +let getChildren = (item) => item.children; describe('useTreeData', function () { it('should construct a tree using initial data', function () {