项目背景:部门现有多个开发项目,都统一使用的ng-alian的框架,有需求需要整合两个项目的某些模块在一起,成一个新的项目,在整合的过程中为了实现项目的可插拔和性能提升
将每个module模块的国际化对应的键,加到相应的module模块下面
步骤:
1.在i18n.service.ts 中做修改:\
加入变量private _data={}; 用来存语言数据
加load方法:\
load(langData) {
this._data = Object.assign(this._data, langData);
this.translate.setTranslation(this.defaultLang, this._data);
this.translate.setDefaultLang(this.defaultLang);
}
2.在module 模块下面加上_i18n文件夹,创建en-US.ts、zh-CN.ts文件
3.在module中间文件laod进来
export class inspectionModule {
constructor(@Inject(ALAIN_I18N_TOKEN) private i18n: I18NService,private translate: TranslateService,) {
let tanslations = this.i18n.defaultLang=='zh-CN'? zh_CN: en_US;
this.i18n.load(tanslations);
}
}