优化修复网站导航的bug

This commit is contained in:
2024-08-28 23:55:01 +08:00
parent 31ec8e057a
commit 2655874948
34 changed files with 1764 additions and 849 deletions
@@ -4,7 +4,7 @@
:width="500"
:visible="visible"
:maskClosable="false"
:title="isUpdate ? '编辑字段' : '添加字段'"
:title="isUpdate ? '编辑参数' : '添加参数'"
:body-style="{ paddingBottom: '28px' }"
@update:visible="updateVisible"
@ok="save"
@@ -13,23 +13,34 @@
ref="formRef"
:model="form"
:rules="rules"
:label-col="{ md: { span: 4 }, sm: { span: 4 }, xs: { span: 24 } }"
:label-col="{ md: { span: 5 }, sm: { span: 4 }, xs: { span: 24 } }"
:wrapper-col="{ md: { span: 21 }, sm: { span: 22 }, xs: { span: 24 } }"
>
<a-form-item label="键" name="name">
<a-input
allow-clear
placeholder="site_name"
<a-form-item label="参数名" name="name">
<SelectWebsiteField
:placeholder="`添加参数`"
class="input-item"
v-model:value="form.name"
@done="chooseData"
/>
</a-form-item>
<a-form-item label="值" name="value">
<a-form-item label="配置值" name="value">
<a-input allow-clear placeholder="淘宝网" v-model:value="form.value" />
</a-form-item>
<a-form-item label="图片">
<SelectFile
:placeholder="`请选择图片`"
:limit="1"
:data="images"
@done="chooseImage"
@del="onDeleteItem"
/>
</a-form-item>
<a-form-item label="描述" name="comments">
<a-input
allow-clear
placeholder="网站名称"
<a-textarea
:rows="4"
:maxlength="200"
placeholder="描述"
v-model:value="form.comments"
/>
</a-form-item>
@@ -41,15 +52,6 @@
v-model:value="form.sortNumber"
/>
</a-form-item>
<a-form-item label="(选填)">
<SelectFile
:placeholder="`请选择图片`"
:limit="1"
:data="images"
@done="chooseImage"
@del="onDeleteItem"
/>
</a-form-item>
</a-form>
</ele-modal>
</template>
@@ -92,6 +94,8 @@
type: 0,
name: undefined,
value: undefined,
modifyRange: undefined,
defaultValue: undefined,
comments: '',
status: 0,
sortNumber: 100
@@ -142,6 +146,11 @@
form.type = 0;
};
const chooseData = (data: WebsiteField) => {
assignFields(data);
form.value = data.defaultValue;
};
/* 保存编辑 */
const save = () => {
if (!formRef.value) {
+40 -7
View File
@@ -9,6 +9,7 @@
:columns="columns"
:datasource="datasource"
:customRow="customRow"
:need-page="false"
tool-class="ele-toolbar-form"
class="sys-org-table"
>
@@ -17,8 +18,12 @@
</template>
<template #bodyCell="{ column, record }">
<template v-if="column.key === 'name'">
<div class="ele-text-heading">{{ record.name }}</div>
<span class="ele-text-placeholder">{{ record.comments }}</span>
<div
class="ele-text-heading"
@click="copyText(`config.${record.name}`)"
>{{ record.name }}</div
>
<!-- <span class="ele-text-placeholder">{{ record.comments }}</span>-->
</template>
<template v-if="column.key === 'value'">
<a-image
@@ -26,7 +31,15 @@
:src="record.value"
:width="120"
/>
<span v-else>{{ record.value }}</span>
<div v-else>{{ record.value }}</div>
</template>
<template v-if="column.key === 'comments'">
<a-popover>
<template #content>
{{ record.comments }}
</template>
<ExclamationCircleOutlined />
</a-popover>
</template>
<template v-if="column.key === 'action'">
<a @click="copyText('{{ config.' + record.name + ' }}')">调用</a>
@@ -66,6 +79,7 @@
<script lang="ts" setup>
import { ref, watch } from 'vue';
import { ExclamationCircleOutlined } from '@ant-design/icons-vue';
import { message } from 'ant-design-vue';
import type { EleProTable } from 'ele-admin-pro';
import type { DatasourceFunction } from 'ele-admin-pro/es/ele-pro-table/types';
@@ -77,6 +91,7 @@
WebsiteFieldParam
} from '@/api/cms/website/field/model';
import {
listWebsiteField,
pageWebsiteField,
removeWebsiteField,
undeleteWebsiteField,
@@ -100,7 +115,7 @@
// 表格数据源
const datasource: DatasourceFunction = ({ page, limit, where, orders }) => {
// 搜索条件
return pageWebsiteField({
return listWebsiteField({
...where,
...orders,
page,
@@ -111,14 +126,32 @@
// 表格列配置
const columns = ref<any[]>([
{
title: '键',
title: '参数名',
dataIndex: 'name',
width: 180,
key: 'name'
},
{
title: '值',
title: '描述',
dataIndex: 'comments',
key: 'comments',
width: 120,
align: 'center'
},
{
title: '配置值',
dataIndex: 'value',
key: 'value'
key: 'value',
width: 400,
ellipsis: true
},
{
title: '默认值',
dataIndex: 'defaultValue'
},
{
title: '可设置范围',
dataIndex: 'modifyRange'
},
{
title: '排序',