样式图示
1.搜索实现方法
const searchBtn = async () => {// 获取table列表数据接口const res = await Api.menuList({paging: false})if (res.code === 200) {// 把树形结构转成扁平结构let result = treeToArray(res.data)// 处理搜索框中数据进行table显示项过滤if(commonData.searchParams.menuName || commonData.searchParams.menuCode || commonData.searchParams.status ) {// 过滤后给el-table重新赋值commonData.tableData = result.filter(item => {/*** menuName 搜索框名称数据项* menuCode 搜索框编码数据项* status 搜索框普通用户数据项*/const {menuName, menuCode, status} = commonData.searchParamsconst isMenuName = menuName ? item.menuName.includes(menuName):trueconst isMenuCode = menuCode? item.menuCode.includes(menuCode):true// item.status == status 次数判断是因为 status只会出现 1 或者 2const isStatus = status ? item.status == status :truereturn isMenuName && isMenuCode && isStatus})// 调用方法让table树形结构展开unfoldBtn()} else {// 重新加载table数据接口loadData()}}
}
2.过滤后实现效果