🐛 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({
|
||||
mutationFn: (code: string) => redeemCode({ code }),
|
||||
onSuccess: (response) => {
|
||||
toast.success(response.data.message || t("redeemSuccess", "兑换成功"));
|
||||
const message = (response.data as { message?: string })?.message || t("redeemSuccess", "兑换成功");
|
||||
toast.success(message);
|
||||
setCode("");
|
||||
onSuccess?.();
|
||||
},
|
||||
@ -71,10 +72,11 @@ export default function RedeemCode({ onSuccess }: RedeemCodeProps) {
|
||||
/>
|
||||
<Button
|
||||
disabled={redeemMutation.isPending || !code.trim()}
|
||||
loading={redeemMutation.isPending}
|
||||
type="submit"
|
||||
>
|
||||
{t("redeem", "兑换")}
|
||||
{redeemMutation.isPending
|
||||
? t("redeeming", "兑换中...")
|
||||
: t("redeem", "兑换")}
|
||||
</Button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@ -273,7 +273,7 @@ export async function redeemCode(
|
||||
body: { code: string },
|
||||
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/`,
|
||||
{
|
||||
method: "POST",
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user