首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >角8自定义框架

角8自定义框架
EN

Stack Overflow用户
提问于 2020-02-15 06:56:53
回答 1查看 415关注 0票数 0

我想设计和开发一个基于8/9的框架,它应该为多个应用程序服务,这些应用程序可以在所有的应用程序之间共享共同的代码。

本申请适用于不同国家,不同国家的规则可能相同或不同。

UI-Components:自定义UI组件被公开为节点模块,将来可以升级并发布到所有应用程序。 core :它应该具有所有应用程序的通用、核心、抽象代码。

Country-1代码:Country-1是核心的实现,它将在需要时重用和扩展它们。

Country-N代码:Country-N是核心的实现,它将在任何需要的地方重用和扩展它们。

我有下面的结构考虑,但我想参数化的国家,我的意思是在生成dist,各自的dist不应与其他国家的代码包。

https://medium.com/disney-streaming/combining-multiple-angular-applications-into-a-single-one-e87d530d6527

设计应该是封闭的修改和开放的扩展。在这里输入图像描述我很感谢你的回应。

EN

回答 1

Stack Overflow用户

发布于 2020-02-15 20:34:02

由于我不能张贴这么多的字符作为评论,我张贴这作为一个答复。这可能不是你所需要的,但我认为这是一个很好的起点。

如果您有以下项目结构

代码语言:javascript
复制
--app
  --components
    --component1
      --country1
      --country2
    --component2
      --country1
      --country2

如果希望为每个国家创建不同的生产版本,则需要更新angular.json文件,以便它将包括针对每个国家的特定文件/文件夹传输配置。例如,生产生成具有以下配置:

代码语言:javascript
复制
"production": {
   "fileReplacements": [
       {
           "replace": "src/environments/environment.ts",
           "with": "src/environments/environment.prod.ts"
       }
    ],
    ...
}

然后,您需要添加特定于国家的配置:

代码语言:javascript
复制
"country1": {
   "assets": [
       {
           "input": "src/app/components/component1/country1",
           "output": "components/component1"
       },
       {
           "input": "src/app/components/component2/country1",
           "output": "components/component2"
       }
   ]
    ...
}

然后,您可以使用以下命令运行生产生成:

ng build --prod --configuration country1

这将复制资产文件夹中的脚本文件,并简单地从那里加载它们。我认为这将复制脚本的原样(没有缩小等)。

我希望这能帮到你。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60236584

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档