🐛 fix: TypeScript build errors in redeem-code component
- Fix type error for accessing response.data.message with proper type assertion - Remove invalid 'loading' prop from Button component - Add conditional text rendering for loading state Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
parent
0a57896d87
commit
9765a0c742
@ -25,7 +25,8 @@ export default function RedeemCode({ onSuccess }: RedeemCodeProps) {
|
|||||||
const redeemMutation = useMutation({
|
const redeemMutation = useMutation({
|
||||||
mutationFn: (code: string) => redeemCode({ code }),
|
mutationFn: (code: string) => redeemCode({ code }),
|
||||||
onSuccess: (response) => {
|
onSuccess: (response) => {
|
||||||
toast.success(response.data.message || t("redeemSuccess", "兑换成功"));
|
const message = (response.data as { message?: string })?.message || t("redeemSuccess", "兑换成功");
|
||||||
|
toast.success(message);
|
||||||
setCode("");
|
setCode("");
|
||||||
onSuccess?.();
|
onSuccess?.();
|
||||||
},
|
},
|
||||||
@ -71,10 +72,11 @@ export default function RedeemCode({ onSuccess }: RedeemCodeProps) {
|
|||||||
/>
|
/>
|
||||||
<Button
|
<Button
|
||||||
disabled={redeemMutation.isPending || !code.trim()}
|
disabled={redeemMutation.isPending || !code.trim()}
|
||||||
loading={redeemMutation.isPending}
|
|
||||||
type="submit"
|
type="submit"
|
||||||
>
|
>
|
||||||
{t("redeem", "兑换")}
|
{redeemMutation.isPending
|
||||||
|
? t("redeeming", "兑换中...")
|
||||||
|
: t("redeem", "兑换")}
|
||||||
</Button>
|
</Button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -273,7 +273,7 @@ export async function redeemCode(
|
|||||||
body: { code: string },
|
body: { code: string },
|
||||||
options?: { [key: string]: any }
|
options?: { [key: string]: any }
|
||||||
) {
|
) {
|
||||||
return request<API.Response & { data?: { message: string } }>(
|
return request<API.Response & { data: { message: string } }>(
|
||||||
`${import.meta.env.VITE_API_PREFIX || ""}/v1/public/redemption/`,
|
`${import.meta.env.VITE_API_PREFIX || ""}/v1/public/redemption/`,
|
||||||
{
|
{
|
||||||
method: "POST",
|
method: "POST",
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user