修正后台会员档位表单的价格下限与缺档兜底
月价 / 年价输入框改为 min={isPurchasable ? 1 : 0},normal 档(0 价)不再被浏览器原生校验拦住
下拉选到目录中不存在的档位时清空表单并置空 rankLabel,避免提交上一档的陈旧值
Co-authored-by: Junie <junie@jetbrains.com>
This commit is contained in:
@@ -182,6 +182,20 @@ export function AdminMembershipPlanPage({
|
||||
setRankLabel(String(entry.rank));
|
||||
}
|
||||
|
||||
// 目录里还没有这一档时清空表单,避免把上一档的价格 / 权益误当成它的值提交。
|
||||
function clearForm(nextPlan: ProfileMembershipPlan) {
|
||||
setPlan(nextPlan);
|
||||
setTitle('');
|
||||
setMonthPriceCents('0');
|
||||
setYearPriceCents('0');
|
||||
setPeriodPoints('0');
|
||||
setModelAccess('basic');
|
||||
setConcurrentJobLimit('1');
|
||||
setEnabled(false);
|
||||
setSortOrder('0');
|
||||
setRankLabel('');
|
||||
}
|
||||
|
||||
const isPurchasable = plan !== 'normal';
|
||||
|
||||
return (
|
||||
@@ -216,7 +230,7 @@ export function AdminMembershipPlanPage({
|
||||
if (entry) {
|
||||
fillForm(entry);
|
||||
} else {
|
||||
setPlan(nextPlan);
|
||||
clearForm(nextPlan);
|
||||
}
|
||||
}}
|
||||
>
|
||||
@@ -253,7 +267,7 @@ export function AdminMembershipPlanPage({
|
||||
<AdminFormRow>
|
||||
<AdminField label="月价(分)">
|
||||
<input
|
||||
min={1}
|
||||
min={isPurchasable ? 1 : 0}
|
||||
step={1}
|
||||
type="number"
|
||||
value={monthPriceCents}
|
||||
@@ -262,7 +276,7 @@ export function AdminMembershipPlanPage({
|
||||
</AdminField>
|
||||
<AdminField label="年价(分,独立可配置)">
|
||||
<input
|
||||
min={1}
|
||||
min={isPurchasable ? 1 : 0}
|
||||
step={1}
|
||||
type="number"
|
||||
value={yearPriceCents}
|
||||
|
||||
Reference in New Issue
Block a user