fix: 去除没有必要的v-model、处理部分双向绑定问题

This commit is contained in:
ZhuRui
2026-08-06 10:12:58 +08:00
parent 7f16ccdb30
commit 0a60cc1816
10 changed files with 21 additions and 73 deletions
@@ -479,12 +479,7 @@ export default defineComponent({
>
{/* ===== Banner 标题 ===== */}
<Form.Item label="Banner标题" name="title" rules={titleRules}>
<Input
placeholder="请输入标题"
maxlength={TITLE_MAX}
allowClear
v-model:value={formData.title}
/>
<Input placeholder="请输入标题" maxlength={TITLE_MAX} allowClear />
</Form.Item>
{/* ===== 上传图片(必填,带裁剪) ===== */}
@@ -540,18 +535,13 @@ export default defineComponent({
{/* ===== 跳转类型 ===== */}
<Form.Item label="跳转类型" name="type" rules={typeRules}>
<Select
options={JUMP_TYPE_OPTIONS as any}
placeholder="请选择"
v-model:value={formData.type}
/>
<Select options={JUMP_TYPE_OPTIONS as any} placeholder="请选择" />
</Form.Item>
{/* ===== 联动字段:赛事详情页 → 模糊搜索关联赛事 ===== */}
{formData.type === '1' && (
<Form.Item label="关联赛事" name="relatedEventId">
<Select
v-model:value={formData.relatedEventId}
showSearch
filterOption={false}
allowClear={!eventSearchLoading.value}
@@ -571,24 +561,14 @@ export default defineComponent({
{/* ===== 联动字段:自定义链接 ===== */}
{formData.type === '2' && (
<Form.Item label="跳转地址" name="linkUrl" rules={linkUrlRules}>
<Input
placeholder="https://xxx"
maxlength={URL_MAX}
allowClear
v-model:value={formData.linkUrl}
/>
<Input placeholder="https://xxx" maxlength={URL_MAX} allowClear />
</Form.Item>
)}
{/* ===== 联动字段:小程序页面 ===== */}
{formData.type === '3' && (
<Form.Item label="小程序路径" name="linkUrl" rules={miniProgramPathRules}>
<Input
placeholder="/pages/index/index"
maxlength={PATH_MAX}
allowClear
v-model:value={formData.linkUrl}
/>
<Input placeholder="/pages/index/index" maxlength={PATH_MAX} allowClear />
</Form.Item>
)}
@@ -672,7 +652,6 @@ export default defineComponent({
max={999}
precision={0}
style={{ width: '200px' }}
v-model:value={formData.sort}
/>
</Form.Item>
</Form>
@@ -136,7 +136,7 @@ export default defineComponent({
{d.dropoutCount || '0'}
</Descriptions.Item>
<Descriptions.Item label="最大人数">{d.dtotalLimit || '-'}</Descriptions.Item>
<Descriptions.Item label="最大人数">{d.totalLimit || '-'}</Descriptions.Item>
<Descriptions.Item label="对岸数量">{d.matchTotalCount || '0'}</Descriptions.Item>
<Descriptions.Item label="已完成对岸数量">{d.matchCount || '0'}</Descriptions.Item>
</Descriptions>
-2
View File
@@ -38,7 +38,6 @@ export default defineComponent({
</Form.Item>
<Form.Item label="用户昵称" name="nickname">
<Input
v-model:value={filterForm.nickname}
placeholder="请输入"
style={{ width: '180px' }}
allowClear
@@ -47,7 +46,6 @@ export default defineComponent({
</Form.Item>
<Form.Item label="手机号" name="phone">
<Input
v-model:value={filterForm.phone}
placeholder="请输入"
style={{ width: '180px' }}
allowClear
-2
View File
@@ -132,7 +132,6 @@ export default defineComponent({
<Form style={{ rowGap: '10px' }} layout="inline" model={filterForm}>
<Form.Item label="用户昵称" name="nickname">
<Input
v-model:value={filterForm.nickname}
placeholder="请输入"
style={{ width: '180px' }}
allowClear
@@ -141,7 +140,6 @@ export default defineComponent({
</Form.Item>
<Form.Item label="手机号" name="phone">
<Input
v-model:value={filterForm.phone}
placeholder="请输入"
style={{ width: '180px' }}
allowClear
-3
View File
@@ -94,7 +94,6 @@ export default defineComponent({
<Form style={{ rowGap: '10px' }} layout="inline" model={filterForm}>
<Form.Item label="申请人昵称" name="nickname">
<Input
v-model:value={filterForm.nickname}
placeholder="请输入"
style={{ width: '160px' }}
allowClear
@@ -103,7 +102,6 @@ export default defineComponent({
</Form.Item>
<Form.Item label="手机号" name="phone">
<Input
v-model:value={filterForm.phone}
placeholder="请输入"
style={{ width: '160px' }}
allowClear
@@ -112,7 +110,6 @@ export default defineComponent({
</Form.Item>
<Form.Item label="真实姓名" name="realName">
<Input
v-model:value={filterForm.realName}
placeholder="请输入"
style={{ width: '160px' }}
allowClear
+10 -3
View File
@@ -216,7 +216,8 @@ export default defineComponent({
>
<FormItem name="phone">
<Input
v-model={[form.phone, 'value']}
value={form.phone}
onUpdate:value={(val: string) => (form.phone = val)}
placeholder="请输入用户名"
size="large"
v-slots={{ prefix: () => <UserOutlined /> }}
@@ -224,7 +225,8 @@ export default defineComponent({
</FormItem>
<FormItem name="password">
<Input
v-model={[form.password, 'value']}
value={form.password}
onUpdate:value={(val: string) => (form.password = val)}
type="password"
placeholder="请输入密码"
size="large"
@@ -234,7 +236,12 @@ export default defineComponent({
{/* 记住密码 */}
<div class={styles.rememberRow}>
<Checkbox v-model={[rememberMe.value, 'checked']}></Checkbox>
<Checkbox
checked={rememberMe.value}
onUpdate:checked={(val: boolean) => setRememberMe(val)}
>
</Checkbox>
</div>
<FormItem>
-1
View File
@@ -60,7 +60,6 @@ export default defineComponent({
</Form.Item>
<Form.Item label="操作人" name="searchOperator">
<Input
v-model:value={filterForm.searchOperator}
placeholder="请输入"
style={{ width: '160px' }}
allowClear
@@ -141,12 +141,7 @@ export default defineComponent({
<Form ref={formRef} layout="vertical" model={formData} class={styles.form} requiredMark>
{/* 角色名称 */}
<Form.Item label="角色名称" name="roleName" rules={roleNameRules}>
<Input
placeholder="请输入"
maxlength={20}
allowClear
v-model:value={formData.roleName}
/>
<Input placeholder="请输入" maxlength={20} allowClear />
</Form.Item>
{/* 菜单权限配置 */}
@@ -234,20 +234,10 @@ export default defineComponent({
{/* 姓名 / 手机号:同一行 */}
<div class={styles.row}>
<Form.Item label="姓名" name="realName" rules={realNameRules} class={styles.col}>
<Input
placeholder="真实姓名"
maxlength={8}
allowClear
v-model:value={formData.realName}
/>
<Input placeholder="真实姓名" maxlength={8} allowClear />
</Form.Item>
<Form.Item label="手机号" name="phone" rules={phoneRules} class={styles.col}>
<Input
placeholder="11位手机号"
maxlength={11}
allowClear
v-model:value={formData.phone}
/>
<Input placeholder="11位手机号" maxlength={11} allowClear />
</Form.Item>
</div>
@@ -268,7 +258,6 @@ export default defineComponent({
</Form.Item>
<Form.Item label="角色" name="roleId" rules={roleRules} class={styles.col}>
<Select
v-model:value={formData.roleId}
showSearch
filterOption={false}
allowClear={!roleSearchLoading.value}
@@ -297,7 +286,6 @@ export default defineComponent({
<Input.Password
placeholder={isEdit ? '请输入新密码' : '至少8位,含字母+数字'}
allowClear
v-model:value={formData.password}
/>
</Form.Item>
<Form.Item
@@ -306,17 +294,12 @@ export default defineComponent({
class={styles.col}
rules={confirmPasswordRules(() => formData.password)}
>
<Input.Password
placeholder="再次输入密码"
allowClear
v-model:value={formData.confirmPassword}
/>
<Input.Password placeholder="再次输入密码" allowClear />
</Form.Item>
</div>
{/* 角色:单独一行 */}
<Form.Item label="角色" name="roleId" rules={roleRules}>
<Select
v-model:value={formData.roleId}
showSearch
filterOption={false}
allowClear={!roleSearchLoading.value}