diff options
Diffstat (limited to 'modern/src/settings/components/EditItemView.js')
-rw-r--r-- | modern/src/settings/components/EditItemView.js | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/modern/src/settings/components/EditItemView.js b/modern/src/settings/components/EditItemView.js index 8c3df663..a5ac31b1 100644 --- a/modern/src/settings/components/EditItemView.js +++ b/modern/src/settings/components/EditItemView.js @@ -37,17 +37,20 @@ const EditItemView = ({ const { id } = useParams(); useEffectAsync(async () => { - if (id) { - const response = await fetch(`/api/${endpoint}/${id}`); - if (response.ok) { - setItem(await response.json()); + console.log(item); + if (!item) { + if (id) { + const response = await fetch(`/api/${endpoint}/${id}`); + if (response.ok) { + setItem(await response.json()); + } else { + throw Error(await response.text()); + } } else { - throw Error(await response.text()); + setItem(defaultItem || {}); } - } else { - setItem(defaultItem || {}); } - }, [id]); + }, [id, item, defaultItem]); const handleSave = useCatch(async () => { let url = `/api/${endpoint}`; |