组织里面的搜索框实现
This commit is contained in:
@@ -72,15 +72,15 @@ const handleAccept = async (row, type) => {
|
|||||||
status: type
|
status: type
|
||||||
});
|
});
|
||||||
if (data?.data?.data?.data) {
|
if (data?.data?.data?.data) {
|
||||||
Message({
|
// Message({
|
||||||
type: 'success',
|
// type: 'success',
|
||||||
message: '成功接受'
|
// message: '成功接受'
|
||||||
});
|
// });
|
||||||
queryInviteListData();
|
queryInviteListData();
|
||||||
} else {
|
} else {
|
||||||
Message({
|
Message({
|
||||||
type: 'error',
|
type: 'error',
|
||||||
message: '接受失败'
|
message: '请求失败'
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -32,7 +32,8 @@
|
|||||||
<div class="font-bold text-[14px] mb-[12px]">成员管理</div>
|
<div class="font-bold text-[14px] mb-[12px]">成员管理</div>
|
||||||
<div class="flex mb-[12px]">
|
<div class="flex mb-[12px]">
|
||||||
<d-button icon="add" variant="solid" class="mr-[8px]" @click="openInviteMemberModal">邀请成员</d-button>
|
<d-button icon="add" variant="solid" class="mr-[8px]" @click="openInviteMemberModal">邀请成员</d-button>
|
||||||
<d-search icon-position="left" class="w-[296px]" placeholder="请输入搜索内容" @search="getMemberList" />
|
<d-search v-model="memberListSearchParam" icon-position="left" class="w-[296px]" placeholder="请输入搜索内容" @search="handleSearch"
|
||||||
|
@keyup.enter="handleSearch"/>
|
||||||
</div>
|
</div>
|
||||||
<d-table
|
<d-table
|
||||||
:data="memberTableData"
|
:data="memberTableData"
|
||||||
@@ -143,6 +144,7 @@ import {
|
|||||||
} from '@/api/organizationManage/organizationManageType';
|
} from '@/api/organizationManage/organizationManageType';
|
||||||
import {getUserInfo} from "@/api/user";
|
import {getUserInfo} from "@/api/user";
|
||||||
import dayjs from "dayjs";
|
import dayjs from "dayjs";
|
||||||
|
import debounce from 'lodash/debounce';
|
||||||
|
|
||||||
const userInfo = shallowRef<UserInfoType>({
|
const userInfo = shallowRef<UserInfoType>({
|
||||||
username: '',
|
username: '',
|
||||||
@@ -346,9 +348,24 @@ async function getMemberList() {
|
|||||||
memberListSearchLoading.value = false;
|
memberListSearchLoading.value = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 搜索处理函数(带防抖)
|
||||||
|
const handleSearch = debounce(() => {
|
||||||
|
pager.pageIndex = 1; // 搜索时重置到第一页
|
||||||
|
updateFilterTableList();
|
||||||
|
}, 500);
|
||||||
|
|
||||||
|
// 修改 updateFilterTableList 函数
|
||||||
function updateFilterTableList() {
|
function updateFilterTableList() {
|
||||||
const queryStr = memberListSearchParam.value;
|
const queryStr = memberListSearchParam.value.trim().toLowerCase();
|
||||||
filterMemberList = queryStr ? originMemberList.filter(item => item.username.includes(queryStr)) : originMemberList;
|
debugger
|
||||||
|
|
||||||
|
filterMemberList = queryStr
|
||||||
|
? originMemberList.filter(item =>
|
||||||
|
item.username.toLowerCase().includes(queryStr) ||
|
||||||
|
item.email.toLowerCase().includes(queryStr))
|
||||||
|
: [...originMemberList];
|
||||||
|
|
||||||
|
pager.total = filterMemberList.length;
|
||||||
updateCurrentPageTableList();
|
updateCurrentPageTableList();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user