我正在尝试使用服务 URL 从内容管理系统获取翻译文本。当我使用 JSON 文件时它运行良好,但我如何使用服务 URL 来获取翻译后的数据?
这是不起作用的代码:
export function createTranslateLoader(http: Http) {
return new TranslateHttpLoader(http, 'http://test.test.com/test/test/Translations/{lang}/{SiteId}');
}
原文由 Begum 发布,翻译遵循 CC BY-SA 4.0 许可协议
昨天我遇到了同样的问题,关于如何使用 ngx-translate 从 API 调用中使用 JSON 响应,我已经确定了解决方案。我知道在这里更新已经很晚了,但我相信有人会从中受益。
如果您不打算使用 .json 文件,Ngx-translate 会提供使用服务。为此,在您的 *.module.ts 文件中,使用“useClass”而不是“useFactory”,如下所示。
在您的翻译服务中,只需像这样调用 API url。
请记住:API 响应应采用 JSON 格式。否则,ngx-translate 不会翻译。
假设您的 JSON 响应格式如下
然后,在你的 *.component.ts 文件中
UI 显示两个按钮(英语和威尔士语),单击时,将根据语言参数相应地调用服务 API url。