修复 affiliate-dash 重复绑定与提交前校验:UID 未变复用绑定防重复生成二维码、提交前强制刷新绑定状态、UID 仅允许纯数字且限 15 位
This commit is contained in:
@@ -161,6 +161,11 @@ export default function ClaimPage() {
|
||||
}, [loadDetail, resolveNextPollDelay, snapshot, stopPolling])
|
||||
|
||||
async function handleSubmitUid() {
|
||||
// 防并发:提交中忽略重复触发(按钮 loading + 回车 Enter 都可能连续触发)
|
||||
if (submittingUid) {
|
||||
return
|
||||
}
|
||||
|
||||
const uid = uidInput.trim()
|
||||
if (!uid) {
|
||||
showError('请输入游戏 UID')
|
||||
|
||||
@@ -18,7 +18,7 @@ export function ClaimUidStep({
|
||||
第 1 步:填写游戏编号(数字的那个)
|
||||
</Typography.Title>
|
||||
<p className="claim-muted claim-uid-step-desc">
|
||||
请填写游戏内角色编号(纯数字),提交后继续绑定或领取。
|
||||
请填写游戏内角色编号(纯数字,不超过 15 位),提交后继续绑定或领取。
|
||||
</p>
|
||||
|
||||
<Space direction="vertical" size={10} style={{ width: '100%' }}>
|
||||
@@ -26,9 +26,9 @@ export function ClaimUidStep({
|
||||
size="large"
|
||||
placeholder="请输入游戏编号(纯数字)"
|
||||
value={uidInput}
|
||||
maxLength={64}
|
||||
maxLength={15}
|
||||
inputMode="numeric"
|
||||
onChange={(event) => onChange(event.target.value)}
|
||||
onChange={(event) => onChange(event.target.value.replace(/\D/g, '').slice(0, 15))}
|
||||
onPressEnter={onSubmit}
|
||||
/>
|
||||
<Button type="primary" size="large" loading={submitting} onClick={onSubmit} block>
|
||||
|
||||
@@ -50,9 +50,9 @@ export function UidEditRow({
|
||||
<Input
|
||||
size="large"
|
||||
value={uidInput}
|
||||
maxLength={64}
|
||||
maxLength={15}
|
||||
placeholder="游戏编号"
|
||||
onChange={(event) => onChange(event.target.value)}
|
||||
onChange={(event) => onChange(event.target.value.replace(/\D/g, '').slice(0, 15))}
|
||||
onPressEnter={onSubmit}
|
||||
/>
|
||||
<Tooltip title="游戏编号填错时,修改为正确编号后点击「更新 UID」即可">
|
||||
|
||||
Reference in New Issue
Block a user