diff options
author | sowgro <tpoke.ferrari@gmail.com> | 2024-11-05 13:05:52 -0500 |
---|---|---|
committer | sowgro <tpoke.ferrari@gmail.com> | 2024-11-05 13:05:52 -0500 |
commit | d57292d123f639362c4be1c61729460fa9cc2e8f (patch) | |
tree | 142d43075d40e799804fed90b616427ee013b448 /extension/src/Body.tsx | |
parent | f2357a84469751c8f90713627e81c0a05ee72ab4 (diff) | |
download | bookmarks-home-d57292d123f639362c4be1c61729460fa9cc2e8f.tar.gz bookmarks-home-d57292d123f639362c4be1c61729460fa9cc2e8f.tar.bz2 bookmarks-home-d57292d123f639362c4be1c61729460fa9cc2e8f.zip |
Fix infinite loop
Diffstat (limited to '')
-rw-r--r-- | extension/src/Body.tsx | 21 |
1 files changed, 9 insertions, 12 deletions
diff --git a/extension/src/Body.tsx b/extension/src/Body.tsx index b2f8495..ee38cf1 100644 --- a/extension/src/Body.tsx +++ b/extension/src/Body.tsx @@ -1,4 +1,4 @@ -import React, {useState} from "react"; +import React, {useEffect, useState} from "react"; import SettingsEditor from "./SettingsEditor.tsx"; import Folder from "./Folder.tsx"; import imageUrl from "./assets/settings.svg" @@ -24,21 +24,18 @@ function Body() { const [rootFolder, setRootFolder] = useState('1') const [bookmarkTree, setBookmarkTree] = useState<BookmarkTreeNode[]>([]) const [ogBookmarkTree, setOgBookmarkTree] = useState<BookmarkTreeNode[] | null>([]) - - browser.bookmarks.getSubTree(rootFolder).then(t => { - console.log(t); - if (t != bookmarkTree) { - setBookmarkTree(t); - } - console.log(bookmarkTree == t) - }); - - if (ogBookmarkTree?.length == 0) { + useEffect(() => { browser.bookmarks.getTree().then(t => { setOgBookmarkTree(t); }) - } + }, []) + useEffect(() => { + browser.bookmarks.getSubTree(rootFolder).then(t => { + setBookmarkTree(t); + }); + }, [rootFolder]); + console.log("Body re-render") return ( <BookmarkTree.Provider value={{bookmarkTree, setBookmarkTree}}> <RootFolder.Provider value={{rootFolder, setRootFolder}}> |