(filterFields: FilterField[] = [], filter: Filter = {})
| 66 | * @returns 路由筛选参数(已剔除空值) |
| 67 | */ |
| 68 | export const getURLSearchByFilterParams = (filterFields: FilterField[] = [], filter: Filter = {}) => { |
| 69 | // 获取并解析路由参数 |
| 70 | const search = getURLSearch(); |
| 71 | // 获取筛选字段名称 |
| 72 | const fieldNames = filterFields.map(field => field.name); |
| 73 | // 从filter对象中pick字段,并将对应值赋予search |
| 74 | forEach(pick(filter, [...DEFAULT_FILTER_FIELD_NAMES, ...fieldNames]), (value, key) => { |
| 75 | search[key] = toString(value); |
| 76 | }); |
| 77 | // 清楚search中为''的值 |
| 78 | return pickBy(search, value => value !== ''); |
| 79 | }; |
| 80 | |
| 81 | /** |
| 82 | * 获取变更路由 |
no test coverage detected