如果 kendo-ui 默认使用英语表达,但我在我的应用程序中使用其他语言,我该如何生成翻译文件?
How can I generate translation files if the kendo-ui uses English expressions by default but I'm using another language in my app?
我正在尝试将 i18n 集成到我的 angular7 应用程序中。它也使用 kendo-ui。
Kendo-ui 模板包含英文表达式,但我的应用程序代码包含匈牙利语表达式。
如果我使用 ng xi18n --output-path translate
生成 messages.xlf
文件,生成的文件将包含来自 kendo-ui 的英语表达式和来自我的应用程序的匈牙利语表达式。
生成 messages.xlf
的正确方法是什么?
我错了,因为 Kenod-UI 翻译不需要使用 angular i18n。
MessageService
非常适合我:https://www.telerik.com/kendo-angular-ui/components/globalization/localization/messages/#toc-using-the-message-service
所以我在我的应用程序代码中保留了原始的 ngx-translate 解决方案,并且我添加了一个新的提供程序(MessageService 的实现)来解析来自 Kendo-UI.
的翻译
这是我的消息服务的代码:
export class KendoMessageService extends MessageService {
constructor(private translateService: TranslateService) {}
public get(key: string): string {
const resolvedValue = this.translateService.instant(key);
return resolvedValue !== key ? resolvedValue : void 0;
}
}
我正在尝试将 i18n 集成到我的 angular7 应用程序中。它也使用 kendo-ui。
Kendo-ui 模板包含英文表达式,但我的应用程序代码包含匈牙利语表达式。
如果我使用 ng xi18n --output-path translate
生成 messages.xlf
文件,生成的文件将包含来自 kendo-ui 的英语表达式和来自我的应用程序的匈牙利语表达式。
生成 messages.xlf
的正确方法是什么?
我错了,因为 Kenod-UI 翻译不需要使用 angular i18n。
MessageService
非常适合我:https://www.telerik.com/kendo-angular-ui/components/globalization/localization/messages/#toc-using-the-message-service
所以我在我的应用程序代码中保留了原始的 ngx-translate 解决方案,并且我添加了一个新的提供程序(MessageService 的实现)来解析来自 Kendo-UI.
的翻译这是我的消息服务的代码:
export class KendoMessageService extends MessageService {
constructor(private translateService: TranslateService) {}
public get(key: string): string {
const resolvedValue = this.translateService.instant(key);
return resolvedValue !== key ? resolvedValue : void 0;
}
}