我正在使用angular-gettext,angular-breadcrumb和angular-ui-router。
我的应用配置与此类似:
app.config(function($stateProvider) {
$stateProvider.state('welcome', {
url : '/',
templateUrl: 'index.html',
ncyBreadcrumb : {
label : 'Home'
}
});
});
我希望能够通过'Home'
翻译面包屑(angular-gettext
)的标签。为此,我需要在app.config()
函数中包含gettext工具。这样的事情是理想的,但是在配置阶段gettextCatalog
不可用:
app.config(function($stateProvider, gettextCatalog) {
$stateProvider.state('welcome', {
url : '/',
templateUrl: 'index.html',
ncyBreadcrumb : {
label : gettextCatalog.getString('Home')
}
});
});
有没有其他方法可以通过这些插件实现这一点,尤其是使用angular-gettext
?
答案 0 :(得分:3)
根据angular-breadcrumb文档:
属性
ncyBreadcrumbLabel
可以包含根据当前状态控制器的范围进行评估的绑定。
我还没有对此进行过测试,但我认为您可以在控制器中使用gettextCatalog
模块:
$stateProvider.state('home', {
url: '/',
templateUrl: 'index.html',
controller: function($scope, gettextCatalog) {
$scope.label = gettextCatalog.getString('Home');
},
ncyBreadcrumb: {
label: '{{label}}'
}
})