扩展全局搜索
了解如何定制和扩展全局搜索实现以添加新的搜索类型。
关于此任务
过程
- 在 SCREEN_EXTENSIONS_HOME 下创建以下文件夹结构(如果还没有):SCREEN_EXTENSIONS_HOME/features/global-search
- 浏览至 SCREEN_EXTENSIONS_HOME/features/global-search 文件夹。
- 将 global-search-extension.module.ts 从 <WORKSPACE>/store-frontend/src/app/features/global-search 文件夹复制到 <WORKSPACE>/store-frontend/store-extensions-src/app/features/global-search 文件夹。注: 如果 global-search-extension.module.ts 文件已存在于 <WORKSPACE>/store-frontend/store-extensions-src/app/features/global-search 文件夹中,请勿复制该文件。
- 要创建新警报,请执行以下步骤:
- 运行以下命令:
ng g c features/global-search/<componentName> --project=store-extensions --skip-import - 在 global-search-extension.module.ts中更新
@NgModule修饰符的声明,导出和 entryComponents 属性中的搜索组件类名。
- 运行以下命令:
- 要为新的搜索组件创建服务或提供者,请执行以下步骤:
- 运行命令:ng g s features/global-search/<serviceName> --project
- 在 global-search-extension.module.ts中更新
@NgModule修饰符的提供程序中的服务或提供程序名称。
- 在全局搜索配置中注册新的搜索类型。在 store-customization-impl.ts 文件中,使用 JSON 规范更新
extensionGlobalSearchConfigList属性,如下所示:static extensionGlobalSearchConfigList: IGlobalSearchConfig[] = [ { type: 'Order', tid: 'Order', iconClass: 'app-icon-receipt', resourceId: 'ISF000039', component: OrderSearchComponent, displayBundleKey: 'orderSearch.TITLE_OrderSearch' } ]提供了显示IGlobalSearchConfig的各种属性的样本 JSON 规范。表 1. 扩展全局搜索 属性 描述 type{string} (必需)搜索类型的唯一标识。 tid{string} (必需)用于测试搜索类型的唯一标识。 component{component}(必需)要针对搜索类型呈现的组件的引用。 iconClass{string} (必需)搜索类型的图标类。 resourceId{string} (必需)与搜索类型关联的资源许可权的标识。 displayBundleKey{string}(必需)搜索类型的显示文本的束键。 hide{boolean}(可选)用于指示是否隐藏搜索类型的标志。