添加流
您可以根据业务需求创建流。 每个流都是单个支持 spa 的角度应用程序,具有自己的
package.json ,用于管理其依赖关系以及建模为角度路径的一堆屏幕或页面组件。 页面组件是用于在路由模块中定义路由的路由级别角组件。过程
要在启用单温泉的情况下创建新的 angular 应用程序,请完成以下步骤:
- 转至
<store-temp>目录,然后运行以下命令:yarn new-extension-feature --module-name=<module-name> --port=<port>此命令支持以下选项:--module-name-模块的名称。注: Ensure that each word in the <module-name> attribute value is separated by a hyphen (-). For example, if the module name is定制搬迁库存
, specify the value ascustom-move-inventory
.--port-运行新应用程序的端口号。
该命令完成以下任务:- 在
<store-temp>/extensions/features文件夹下创建前缀为isf的新 angular 应用程序。 所有源代码都将位于<store-temp>/extensions/features/<module-name>文件夹中。 - 安装单温泉角。
- 在
src项目文件夹中生成main.single-spa.ts。 - 使用
src/app项目文件夹中的<module-name>生成延迟装入的模块。 - 使用以下路由定义更新路由模块
src/app-routing.module.ts文件:- 延迟装入的模块具有相应的路由路径定义。
EmptyRouteComponent表示不匹配的路由。
- 使用应用程序启动和构建脚本更新
package.json项目根。 这些脚本用于启动和构建应用程序。 - 在
<store-temp>/extensions/override-static-assets/root-config/custom/import-map.json中注册新应用程序。import-map.json文件注册 JavaScript 模块以装入特定应用程序。 - 为支持本地化和国际化,将在
src/assets项目文件夹中生成i18n文件夹,以维护特定于语言的捆绑软件。 在src/assets/<module-name>/i18n项目文件夹中生成空的en.json捆绑软件 JSON 文件。 还会更新代码以设置TranslateModule来装入合适的转换束 JSON 文件。
- 在
<store-temp>/extensions/features/<module-name>/src/app/features/<module-name>中为流创建新视图或屏幕。每个屏幕都是具有
<store-temp>/extensions/features/<module-name>/src/app/features<module-name>/<module-name>.routing.module.ts文件中定义的相应路径的页面组件。 - 更新在
routes.json中作为新流的一部分添加的新路由。<store-temp>/extensions/override-static-assets/root-config/custom/routes.json中提供了新路由。应用程序中提供的路径配置为
store-single-spa/extensions/override-static-assets/root-config/custom/routes.json中提供的feature-routes.json的一部分。 有关更新新路线的更多信息,请参阅《 更新导入地图》和《 routes.json 》。