fix: 新手教程修改地址,注册表单修改form传值
This commit is contained in:
@@ -173,6 +173,7 @@ export default function RegisterForm({
|
||||
/>
|
||||
<SendCode
|
||||
type='email'
|
||||
form={form}
|
||||
params={{
|
||||
...form.getValues(),
|
||||
type: 1,
|
||||
|
||||
@@ -99,6 +99,7 @@ export default function ResetForm({
|
||||
/>
|
||||
<SendCode
|
||||
type='email'
|
||||
form={form}
|
||||
params={{
|
||||
...form.getValues(),
|
||||
type: 2,
|
||||
|
||||
@@ -121,6 +121,7 @@ export default function LoginForm({
|
||||
{mode === 'code' && (
|
||||
<SendCode
|
||||
type='phone'
|
||||
form={form}
|
||||
params={{
|
||||
...form.getValues(),
|
||||
type: 2,
|
||||
|
||||
@@ -173,6 +173,7 @@ export default function RegisterForm({
|
||||
|
||||
<SendCode
|
||||
type='phone'
|
||||
form={form}
|
||||
params={{
|
||||
...form.getValues(),
|
||||
type: 1,
|
||||
|
||||
@@ -121,6 +121,7 @@ export default function ResetForm({
|
||||
/>
|
||||
<SendCode
|
||||
type='phone'
|
||||
form={form}
|
||||
params={{
|
||||
...form.getValues(),
|
||||
type: 2,
|
||||
|
||||
@@ -6,6 +6,7 @@ import { AiroButton } from '@workspace/airo-ui/components/AiroButton';
|
||||
import { useCountDown } from 'ahooks';
|
||||
import { useTranslations } from 'next-intl';
|
||||
import { useEffect, useState } from 'react';
|
||||
import { UseFormReturn } from 'react-hook-form';
|
||||
|
||||
interface SendCodeProps {
|
||||
type: 'email' | 'phone';
|
||||
@@ -15,8 +16,9 @@ interface SendCodeProps {
|
||||
telephone_area_code?: string;
|
||||
telephone?: string;
|
||||
};
|
||||
form: UseFormReturn<any>; // Add the new form prop
|
||||
}
|
||||
export default function SendCode({ type, params }: SendCodeProps) {
|
||||
export default function SendCode({ type, params, form }: SendCodeProps) {
|
||||
const t = useTranslations('auth');
|
||||
const { common } = useGlobalStore();
|
||||
const { verify_code_interval } = common.verify_code;
|
||||
@@ -49,21 +51,25 @@ export default function SendCode({ type, params }: SendCodeProps) {
|
||||
};
|
||||
|
||||
const getEmailCode = async () => {
|
||||
if (params.email && params.type) {
|
||||
// Use form.getValues() to get the latest form data
|
||||
const latestValues = form.getValues();
|
||||
if (latestValues.email && latestValues.type) {
|
||||
await sendEmailCode({
|
||||
email: params.email,
|
||||
type: params.type,
|
||||
email: latestValues.email,
|
||||
type: latestValues.type,
|
||||
});
|
||||
setCodeTimer();
|
||||
}
|
||||
};
|
||||
|
||||
const getPhoneCode = async () => {
|
||||
if (params.telephone && params.telephone_area_code && params.type) {
|
||||
// Use form.getValues() to get the latest form data
|
||||
const latestValues = form.getValues();
|
||||
if (latestValues.telephone && latestValues.telephone_area_code && latestValues.type) {
|
||||
await sendSmsCode({
|
||||
telephone: params.telephone,
|
||||
telephone_area_code: params.telephone_area_code,
|
||||
type: params.type,
|
||||
telephone: latestValues.telephone,
|
||||
telephone_area_code: latestValues.telephone_area_code,
|
||||
type: latestValues.type,
|
||||
});
|
||||
setCodeTimer();
|
||||
}
|
||||
@@ -71,9 +77,9 @@ export default function SendCode({ type, params }: SendCodeProps) {
|
||||
|
||||
const handleSendCode = async () => {
|
||||
if (type === 'email') {
|
||||
getEmailCode();
|
||||
await getEmailCode();
|
||||
} else {
|
||||
getPhoneCode();
|
||||
await getPhoneCode();
|
||||
}
|
||||
};
|
||||
const disabled =
|
||||
|
||||
Reference in New Issue
Block a user