移除地区的校验,不需要填地区
This commit is contained in:
@@ -4,8 +4,6 @@ export default {
|
||||
playxuserasset__username: 'username',
|
||||
receiver_name: 'receiver name',
|
||||
phone: 'phone',
|
||||
region: 'region',
|
||||
region_tip: 'Separate levels with commas, e.g. Kuala Lumpur,KLCC',
|
||||
detail_address: 'detail_address',
|
||||
default_setting: 'Default address',
|
||||
'default_setting 0': '--',
|
||||
|
||||
@@ -4,8 +4,6 @@ export default {
|
||||
playxuserasset__username: '用户名',
|
||||
receiver_name: '收货人',
|
||||
phone: '电话',
|
||||
region: '地区',
|
||||
region_tip: '多个层级请用英文逗号分隔,如:广东省,广州市,天河区',
|
||||
detail_address: '详细地址',
|
||||
default_setting: '默认地址',
|
||||
'default_setting 0': '--',
|
||||
|
||||
@@ -39,28 +39,6 @@ const { t } = useI18n()
|
||||
const tableRef = useTemplateRef('tableRef')
|
||||
const optButtons: OptButton[] = defaultOptButtons(['edit', 'delete'])
|
||||
|
||||
const hasChinese = (s: string) => /[\u4e00-\u9fa5]/.test(s)
|
||||
|
||||
const formatRegion = (raw: string) => {
|
||||
const s = raw.toString().trim()
|
||||
if (!s) return ''
|
||||
if (hasChinese(s)) {
|
||||
return s.replace(/[,,\s]+/g, ',')
|
||||
}
|
||||
return s.replace(/[,,\s]+/g, ',')
|
||||
}
|
||||
|
||||
const normalizeRegionInput = (raw: unknown) => {
|
||||
const s = String(raw ?? '').trim()
|
||||
if (!s) return ''
|
||||
return s
|
||||
.replace(/,/g, ',')
|
||||
.split(',')
|
||||
.map((part) => part.trim())
|
||||
.filter(Boolean)
|
||||
.join(',')
|
||||
}
|
||||
|
||||
/**
|
||||
* baTable 内包含了表格的所有数据且数据具备响应性,然后通过 provide 注入给了后代组件
|
||||
*/
|
||||
@@ -98,24 +76,15 @@ const baTable = new baTableClass(
|
||||
sortable: false,
|
||||
operator: 'LIKE',
|
||||
},
|
||||
{
|
||||
label: t('mall.address.region'),
|
||||
prop: 'region_text',
|
||||
align: 'center',
|
||||
operator: false,
|
||||
showOverflowTooltip: true,
|
||||
formatter: (row: TableRow, _column: TableColumn, cellValue: string) => {
|
||||
const raw = (cellValue || row.region || '').toString()
|
||||
return formatRegion(raw)
|
||||
},
|
||||
},
|
||||
{
|
||||
label: t('mall.address.detail_address'),
|
||||
prop: 'detail_address',
|
||||
align: 'center',
|
||||
minWidth: 200,
|
||||
operatorPlaceholder: t('Fuzzy query'),
|
||||
sortable: false,
|
||||
operator: 'LIKE',
|
||||
showOverflowTooltip: true,
|
||||
},
|
||||
{
|
||||
label: t('mall.address.default_setting'),
|
||||
@@ -156,15 +125,6 @@ const baTable = new baTableClass(
|
||||
},
|
||||
{
|
||||
defaultItems: {},
|
||||
},
|
||||
{
|
||||
onSubmit: () => {
|
||||
const items = baTable.form.items
|
||||
if (items && items.region !== undefined && items.region !== null) {
|
||||
items.region = normalizeRegionInput(items.region)
|
||||
}
|
||||
return true
|
||||
},
|
||||
}
|
||||
)
|
||||
|
||||
|
||||
@@ -51,16 +51,9 @@
|
||||
prop="phone"
|
||||
:placeholder="t('Please input field', { field: t('mall.address.phone') })"
|
||||
/>
|
||||
<FormItem
|
||||
:label="t('mall.address.region')"
|
||||
type="string"
|
||||
v-model="baTable.form.items!.region"
|
||||
prop="region"
|
||||
:placeholder="t('mall.address.region_tip')"
|
||||
/>
|
||||
<FormItem
|
||||
:label="t('mall.address.detail_address')"
|
||||
type="string"
|
||||
type="textarea"
|
||||
v-model="baTable.form.items!.detail_address"
|
||||
prop="detail_address"
|
||||
:placeholder="t('Please input field', { field: t('mall.address.detail_address') })"
|
||||
@@ -103,6 +96,8 @@ const { t } = useI18n()
|
||||
|
||||
const rules: Partial<Record<string, FormItemRule[]>> = reactive({
|
||||
phone: [buildValidatorData({ name: 'required', title: t('mall.address.phone') })],
|
||||
receiver_name: [buildValidatorData({ name: 'required', title: t('mall.address.receiver_name') })],
|
||||
detail_address: [buildValidatorData({ name: 'required', title: t('mall.address.detail_address') })],
|
||||
create_time: [buildValidatorData({ name: 'date', title: t('mall.address.create_time') })],
|
||||
update_time: [buildValidatorData({ name: 'date', title: t('mall.address.update_time') })],
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user