我正在使用@ angular / localize以三种语言使用我的应用程序,并且在部署服务器上花了很多时间。原因是,即使所有语言环境都使用相同的资产,它们也会被下载并针对每个资产进行部署。
这就是为什么我要删除一个地区以外的所有资产的原因。我使用脚本并删除了文件夹本身。但是,现在我希望其他语言环境使用来自美国的资产,而不是说找不到404,就像他们现在正在做的那样。
目前有什么方法可以实现这一目标?
我的语言环境配置是这样:
"i18n": {
"sourceLocale": "en-US",
"locales": {
"fr": "src/locale/messages.fr.xtb",
"pt": "src/locale/messages.pt.xtb",
"hi": "src/locale/messages.hi.xtb",
}
},
要检查我正在使用的配置服务,
"prod-hi": {
"fileReplacements": [
{
"replace": "src/environments/environment.ts",
"with": "src/environments/environment.prod.ts"
}
],
"optimization": true,
"outputHashing": "all",
"sourceMap": false,
"extractCss": true,
"namedChunks": false,
"extractLicenses": true,
"vendorChunk": false,
"buildOptimizer": true,
"deleteOutputPath": false,
"assets": [],
"localize": ["hi"]
},
答案 0 :(得分:0)
在您的“本地”配置中,您可以使用资产配置来忽略/删除所有不需要的资产。并且仍然输出到资产文件夹:
"assets": [
{
"glob": "**/*",
"input": "src/assets/",
"ignore": [
"**/hi/*",
"**/en/*"
],
"output": "/assets/"
}
]
这取自:https://angular.io/guide/workspace-config#assets-configuration