From 3fca0a1b0a0f63d16d5aceaa1823d56c38f06cd3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8C=BF=E5=B0=8F=E5=A4=A9?= <1638245306@qq.com> Date: Sat, 25 Jun 2022 15:00:38 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8A=9F=E8=83=BD=E5=8F=98=E5=8C=96:?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 优化前端过滤器 --- web/src/components/many-to-many/index.vue | 2 +- web/src/libs/util.params.js | 21 ++++++++++++--------- web/src/views/system/user/crud.js | 2 ++ web/src/views/system/user/index.vue | 8 +------- 4 files changed, 16 insertions(+), 17 deletions(-) diff --git a/web/src/components/many-to-many/index.vue b/web/src/components/many-to-many/index.vue index 572dd57..e3c6f4e 100644 --- a/web/src/components/many-to-many/index.vue +++ b/web/src/components/many-to-many/index.vue @@ -16,7 +16,7 @@ export default { require: false }, value: { - type: [String, Number], + type: Array, required: false } }, diff --git a/web/src/libs/util.params.js b/web/src/libs/util.params.js index 14d176b..d4ad979 100644 --- a/web/src/libs/util.params.js +++ b/web/src/libs/util.params.js @@ -1,16 +1,19 @@ +import util from '@/libs/util' + /** * 对请求参数进行过滤 - * that=>this - * array:其他字段数组 + *@param that=>this + *@param array:其他字段数组 */ const filterParams = function (that, array) { - const arr = that.crud.columns - const columnKeys = arr.map(item => { - return item.key + that.$nextTick(()=>{ + const arr = that.crud.columns + const columnKeys = arr.map(item => { + return item.key + }) + let newArray = [...columnKeys, array, 'id'] + newArray = [...new Set(newArray)] + that.crud.searchOptions.form.query = '{' + newArray.toString() + '}' }) - let newArray = [...columnKeys, array, 'id'] - newArray = [...new Set(newArray)] - return '{' + newArray.toString() + '}' } - export default filterParams diff --git a/web/src/views/system/user/crud.js b/web/src/views/system/user/crud.js index f61aab6..caaa4d0 100644 --- a/web/src/views/system/user/crud.js +++ b/web/src/views/system/user/crud.js @@ -1,7 +1,9 @@ import { request } from '@/api/service' import { urlPrefix as deptPrefix } from '../dept/api' +import util from '@/libs/util' export const crudOptions = (vm) => { + util.filterParams(vm, ['dept_name','role_info{name}']) return { pageOptions: { compact: true diff --git a/web/src/views/system/user/index.vue b/web/src/views/system/user/index.vue index f897164..21293a0 100644 --- a/web/src/views/system/user/index.vue +++ b/web/src/views/system/user/index.vue @@ -94,7 +94,6 @@ import * as api from './api' import { crudOptions } from './crud' import { d2CrudPlus } from 'd2-crud-plus' -import util from '@/libs/util' export default { name: 'user', mixins: [d2CrudPlus.crud], @@ -146,12 +145,7 @@ export default { return crudOptions(this) }, pageRequest (query) { - const columnKeys = util.filterParams(this, [ - 'dept_name', - 'role_info{name}' - ]) - const params = { query: columnKeys, ...query } - return api.GetList(params) + return api.GetList(query) }, addRequest (row) { return api.AddObj(row)