* 高效的缓存键生成
(prefix: string, componentTypes: ComponentType[])
| 747 | * 高效的缓存键生成 |
| 748 | */ |
| 749 | private generateCacheKey(prefix: string, componentTypes: ComponentType[]): string { |
| 750 | // 快速路径:单组件查询 |
| 751 | if (componentTypes.length === 1) { |
| 752 | const name = getComponentTypeName(componentTypes[0]!); |
| 753 | return `${prefix}:${name}`; |
| 754 | } |
| 755 | |
| 756 | // 多组件查询:使用排序后的类型名称创建键 |
| 757 | const sortKey = componentTypes |
| 758 | .map((t) => { |
| 759 | const name = getComponentTypeName(t); |
| 760 | return name; |
| 761 | }) |
| 762 | .sort() |
| 763 | .join(','); |
| 764 | |
| 765 | const fullKey = `${prefix}:${sortKey}`; |
| 766 | |
| 767 | return fullKey; |
| 768 | } |
| 769 | |
| 770 | /** |
| 771 | * 清理查询缓存 |
no test coverage detected