Angular 翻译的良好做法
Good practice with Angular Translate
我正在尝试使用 angular 翻译,我有一个最佳实践问题。像这样对字符串使用键是最佳做法吗:
app.config(function($translateProvider) {
$translateProvider.translations('en', {
HEADLINE: 'Hello there, This is my awesome app!',
INTRO_TEXT: 'And it has i18n support!'
});
});
和
<h2>{{ 'HEADLINE' | translate }}</h2>
<p>{{ 'INTRO_TEXT' | translate }}</p>
与类似的东西相反:
<h2 ng-bind="'Hello there, This is my awesome app!' | translate"></h2>
如果是这样,为什么一种方法优于另一种方法? using key 是多语言支持所必需的吗?
我更喜欢短键而不是英文文本作为键。这会破坏你的 HTML 和你的配置 JS 文件。当你使用短键时,你也可以嵌套键,例如
{
user: {
name: 'Name',
email: 'E-Mail'
}
}
并在您的 HTML
中像这样使用它
<p translate="user.name"></p>
你应该使用指令而不是过滤器..原因如下:https://github.com/angular-translate/angular-translate/wiki/Getting-Started#using-translate-directive
我正在尝试使用 angular 翻译,我有一个最佳实践问题。像这样对字符串使用键是最佳做法吗:
app.config(function($translateProvider) {
$translateProvider.translations('en', {
HEADLINE: 'Hello there, This is my awesome app!',
INTRO_TEXT: 'And it has i18n support!'
});
});
和
<h2>{{ 'HEADLINE' | translate }}</h2>
<p>{{ 'INTRO_TEXT' | translate }}</p>
与类似的东西相反:
<h2 ng-bind="'Hello there, This is my awesome app!' | translate"></h2>
如果是这样,为什么一种方法优于另一种方法? using key 是多语言支持所必需的吗?
我更喜欢短键而不是英文文本作为键。这会破坏你的 HTML 和你的配置 JS 文件。当你使用短键时,你也可以嵌套键,例如
{
user: {
name: 'Name',
email: 'E-Mail'
}
}
并在您的 HTML
中像这样使用它<p translate="user.name"></p>
你应该使用指令而不是过滤器..原因如下:https://github.com/angular-translate/angular-translate/wiki/Getting-Started#using-translate-directive