Merge pull request #8431 from igrowp/fix-search-sort-panel

fix: editor组件面板排序问题
This commit is contained in:
wutong 2023-10-19 12:43:51 +08:00 committed by GitHub
commit e92878229a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 35 additions and 21 deletions

View File

@ -201,9 +201,15 @@ export default class SearchPanel extends React.Component<
curSearchResult.push(item);
});
} else {
const searchMap = new Map<string, any>();
matchSorter(allResult, keywords, {
keys: ['name', 'description', 'scaffold.type', 'searchKeywords']
}).forEach(item => {
searchMap.set(item.id, item);
});
allResult.forEach(item => {
if (searchMap.has(item.id)) {
if (item[curTagKey]) {
const tags = Array.isArray(item[curTagKey])
? item[curTagKey].concat()
@ -217,6 +223,7 @@ export default class SearchPanel extends React.Component<
} else {
curSearchResult.push(item);
}
}
});
}

View File

@ -692,9 +692,15 @@ export const MainStore = types
[propName: string]: Array<SubRendererInfo>;
} = {};
const searchMap = new Map<string, any>();
matchSorter(subRenderers, keywords, {
keys: ['name', 'description', 'scaffold.type', 'searchKeywords']
}).forEach(item => {
searchMap.set(item.id, item);
});
subRenderers.forEach(item => {
if (searchMap.has(item.id)) {
const tags = Array.isArray(item.tags)
? item.tags.concat()
: item.tags
@ -705,6 +711,7 @@ export const MainStore = types
grouped[tag] = grouped[tag] || [];
grouped[tag].push(item);
});
}
});
return grouped;