Fixed error cleanup when switching product variants
This commit is contained in:
parent
b989a53ea1
commit
2660fe40dd
1 changed files with 7 additions and 8 deletions
|
@ -1,4 +1,4 @@
|
||||||
import React from "react";
|
import React, { useState } from "react";
|
||||||
import { useIntl } from "react-intl";
|
import { useIntl } from "react-intl";
|
||||||
|
|
||||||
import placeholderImg from "@assets/images/placeholder255x255.png";
|
import placeholderImg from "@assets/images/placeholder255x255.png";
|
||||||
|
@ -43,6 +43,7 @@ export const ProductVariant: React.FC<ProductUpdateProps> = ({
|
||||||
require={["productVariant"]}
|
require={["productVariant"]}
|
||||||
>
|
>
|
||||||
{({ data, loading }) => {
|
{({ data, loading }) => {
|
||||||
|
const [errors, setErrors] = useState([]);
|
||||||
const variant = data ? data.productVariant : undefined;
|
const variant = data ? data.productVariant : undefined;
|
||||||
const handleBack = () => navigate(productUrl(productId));
|
const handleBack = () => navigate(productUrl(productId));
|
||||||
const handleDelete = () => {
|
const handleDelete = () => {
|
||||||
|
@ -54,8 +55,10 @@ export const ProductVariant: React.FC<ProductUpdateProps> = ({
|
||||||
navigate(productUrl(productId));
|
navigate(productUrl(productId));
|
||||||
};
|
};
|
||||||
const handleUpdate = (data: VariantUpdate) => {
|
const handleUpdate = (data: VariantUpdate) => {
|
||||||
if (!maybe(() => data.productVariantUpdate.productErrors.length)) {
|
if (!data.productVariantUpdate.productErrors.length) {
|
||||||
notify({ text: intl.formatMessage(commonMessages.savedChanges) });
|
notify({ text: intl.formatMessage(commonMessages.savedChanges) });
|
||||||
|
} else {
|
||||||
|
setErrors(data.productVariantUpdate.productErrors);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -107,12 +110,7 @@ export const ProductVariant: React.FC<ProductUpdateProps> = ({
|
||||||
<>
|
<>
|
||||||
<WindowTitle title={maybe(() => data.productVariant.name)} />
|
<WindowTitle title={maybe(() => data.productVariant.name)} />
|
||||||
<ProductVariantPage
|
<ProductVariantPage
|
||||||
errors={maybe(
|
errors={errors}
|
||||||
() =>
|
|
||||||
updateVariant.opts.data.productVariantUpdate
|
|
||||||
.productErrors,
|
|
||||||
[]
|
|
||||||
)}
|
|
||||||
saveButtonBarState={formTransitionState}
|
saveButtonBarState={formTransitionState}
|
||||||
loading={disableFormSave}
|
loading={disableFormSave}
|
||||||
placeholderImage={placeholderImg}
|
placeholderImage={placeholderImg}
|
||||||
|
@ -146,6 +144,7 @@ export const ProductVariant: React.FC<ProductUpdateProps> = ({
|
||||||
}}
|
}}
|
||||||
onVariantClick={variantId => {
|
onVariantClick={variantId => {
|
||||||
navigate(productVariantEditUrl(productId, variantId));
|
navigate(productVariantEditUrl(productId, variantId));
|
||||||
|
setErrors([]);
|
||||||
}}
|
}}
|
||||||
/>
|
/>
|
||||||
<ProductVariantDeleteDialog
|
<ProductVariantDeleteDialog
|
||||||
|
|
Loading…
Reference in a new issue