更改 angular 中的默认语言环境
Change default Locale in angular
我用法语构建了一个 angular 应用程序,所以现在我想使用国际化 (i18n) 以其他语言(如 En)提供它,所以问题是 Angular 的默认语言环境是是的,当我写这个 <span i18n>Mes endroits</span>
时,我有这个
<file source-language= "en-US" datatype="plaintext" original="ng2.template">// source is English
<body>
<trans-unit id="4df6e2173dc9d9f8c60481273cf3371981e60fde" datatype="html">
<source>Mes endroits</source> ... // but this is in french
我希望源语言是 fr 并提供例如 messages.en.xlf
so can I change the default locale to fr , or I have to rewrite my code in English and provide messages.fr.xlf
这可以帮助您 ngx-translate/ng2-translate,这个库在 angular 项目中很常见。
个人比较喜欢这样翻译。
您将能够使用翻译管道。像这样
<p>{{ 'myPlaces' | translate }}</p>
并在 fr.json 中定义:
{ 'myPlaces' : 'Mes endroits' }
我让你查资料
这是angular提供的文档。
Stackblitz link
在 app.module.ts 中将此添加到提供商中:
{ provide: LOCALE_ID, useValue: 'de-DE'}
这应该可以通过在 angular.json
文件中设置 sourceLocale
来实现。在我的例子中,核心应用程序是德语的,所以文件的相关部分如下:
{
"$schema": "./node_modules/@angular/cli/lib/config/schema.json",
"version": 1,
"newProjectRoot": "projects",
"projects": {
"angular-client": {
"i18n": {
"sourceLocale": {
"code": "de",
"baseHref": ""
},
"locales": {
"en": {
"translation": "src/locale/messages.en.xlf",
"baseHref": ""
}
}
}
}
}
}
对我来说,这符合预期,XLF 文件的属性都正确。
我用法语构建了一个 angular 应用程序,所以现在我想使用国际化 (i18n) 以其他语言(如 En)提供它,所以问题是 Angular 的默认语言环境是是的,当我写这个 <span i18n>Mes endroits</span>
时,我有这个
<file source-language= "en-US" datatype="plaintext" original="ng2.template">// source is English
<body>
<trans-unit id="4df6e2173dc9d9f8c60481273cf3371981e60fde" datatype="html">
<source>Mes endroits</source> ... // but this is in french
我希望源语言是 fr 并提供例如 messages.en.xlf
so can I change the default locale to fr , or I have to rewrite my code in English and provide messages.fr.xlf
这可以帮助您 ngx-translate/ng2-translate,这个库在 angular 项目中很常见。
个人比较喜欢这样翻译。
您将能够使用翻译管道。像这样
<p>{{ 'myPlaces' | translate }}</p>
并在 fr.json 中定义:
{ 'myPlaces' : 'Mes endroits' }
我让你查资料
这是angular提供的文档。
Stackblitz link
在 app.module.ts 中将此添加到提供商中:
{ provide: LOCALE_ID, useValue: 'de-DE'}
这应该可以通过在 angular.json
文件中设置 sourceLocale
来实现。在我的例子中,核心应用程序是德语的,所以文件的相关部分如下:
{
"$schema": "./node_modules/@angular/cli/lib/config/schema.json",
"version": 1,
"newProjectRoot": "projects",
"projects": {
"angular-client": {
"i18n": {
"sourceLocale": {
"code": "de",
"baseHref": ""
},
"locales": {
"en": {
"translation": "src/locale/messages.en.xlf",
"baseHref": ""
}
}
}
}
}
}
对我来说,这符合预期,XLF 文件的属性都正确。