Merge pull request #935 from payloadcms/fix/#930

fix: #930
This commit is contained in:
James Mikrut
2022-08-14 10:42:10 -07:00
committed by GitHub
3 changed files with 11 additions and 4 deletions

View File

@@ -163,7 +163,7 @@
"react-dom": "^18.0.0",
"react-helmet": "^6.1.0",
"react-router-dom": "^5.1.2",
"react-router-navigation-prompt": "^1.8.11",
"react-router-navigation-prompt": "^1.9.6",
"react-select": "^3.0.8",
"react-simple-code-editor": "^0.11.0",
"react-toastify": "^8.2.0",

View File

@@ -36,6 +36,7 @@ const EditView: React.FC<IndexProps> = (props) => {
const [fields] = useState(() => formatFields(incomingCollection, isEditing));
const [collection] = useState(() => ({ ...incomingCollection, fields }));
const [redirect, setRedirect] = useState<string>();
const locale = useLocale();
const { serverURL, routes: { admin, api } } = useConfig();
@@ -51,12 +52,12 @@ const EditView: React.FC<IndexProps> = (props) => {
const onSave = useCallback(async (json: any) => {
getVersions();
if (!isEditing) {
history.push(`${admin}/collections/${collection.slug}/${json?.doc?.id}`);
setRedirect(`${admin}/collections/${collection.slug}/${json?.doc?.id}`);
} else {
const state = await buildStateFromSchema({ fieldSchema: collection.fields, data: json.doc, user, id, operation: 'update', locale });
setInitialState(state);
}
}, [admin, collection, history, isEditing, getVersions, user, id, locale]);
}, [admin, collection, isEditing, getVersions, user, id, locale]);
const [{ data, isLoading: isLoadingDocument, isError }] = usePayloadAPI(
(isEditing ? `${serverURL}${api}/${slug}/${id}` : null),
@@ -111,6 +112,12 @@ const EditView: React.FC<IndexProps> = (props) => {
awaitInitialState();
}, [dataToRender, fields, isEditing, id, user, locale, isLoadingDocument, preferencesKey, getPreference]);
useEffect(() => {
if (redirect) {
history.push(redirect);
}
}, [history, redirect]);
if (isError) {
return (
<Redirect to={`${admin}/not-found`} />

View File

@@ -10531,7 +10531,7 @@ react-router-dom@^5.1.2:
tiny-invariant "^1.0.2"
tiny-warning "^1.0.0"
react-router-navigation-prompt@^1.8.11:
react-router-navigation-prompt@^1.9.6:
version "1.9.6"
resolved "https://registry.npmjs.org/react-router-navigation-prompt/-/react-router-navigation-prompt-1.9.6.tgz#a949252dfbae8c40508671beb6d5995f0b089ac4"
integrity sha512-l0sAtbroHK8i1/Eyy29XcrMpBEt0R08BaScgMUt8r5vWWbLz7G0ChOikayTCQm7QgDFsHw8gVnxDJb7TBZCAKg==