2015-03-03 144 views
1

我使用以下插件angular-translateng-breadcrumbsAngularJS過濾器配置

兩者都在config配置,但如何將一個使該標籤可以被翻譯?

我可以在每個頁面的控制器中做到這一點,但是沒有更簡單的方法嗎?

配置:

someApp.config(['$routeProvider', '$locationProvider', '$translateProvider', 
    function ($routeProvider, $locationProvider, $translateProvider) { 
     $translateProvider.useStaticFilesLoader({ 
      prefix: '/localization/locale-', 
      suffix: '.json' 
     }); 
     $translateProvider.preferredLanguage('nl'); 

     $routeProvider. 
     when('/', { 
      templateUrl: 'partials/landing.html', 
      controller: 'HomeCtrl', 
      label: 'Home' 
     }). 
      // default 
     otherwise({ 
      redirectTo: '/' 
     }); 
    } 
]); 

回答

0

我不知道有關的標籤,但templateUrl可以通過templateProvider更換它是返回一個字符串的函數。

你可以嘗試在標籤上寫一個函數,在條件下給出不同語言的標籤(它甚至可以是一個其他的函數)。

+0

似乎有點矯枉過正,我剛添加的過濾器標籤上的ng-breadcrumbs插件:) – Kiwi 2015-03-03 09:02:44

+0

對,你使用插件,必須有內置的東西來管理:) – Eagle1 2015-03-03 09:08:23

+0

發現其他溶劑 – Kiwi 2015-03-03 09:39:17

0

有解決這個簡單的方法,我也沒那麼清醒明顯: 加入|translateng-bind問題解決了

<ul id="breadcrumb"> 
    <li ng-repeat="breadcrumb in breadcrumbs.get() track by breadcrumb.path" ng-class="{ active: $last }"> 
     <a ng-if="!$last" ng-href="#{{ breadcrumb.path }}" ng-bind="breadcrumb.label | translate" class="margin-right-xs"> 
     </a><span ng-if="$last" ng-bind="breadcrumb.label | translate"></span> 
    </li> 
</ul>