2017-05-29 53 views
1

我需要使用Angular Translate爲我正在處理的應用程序提供本地化。如何使用Angular Translate來翻譯與其有角度綁定的字符串?

我有這樣的事情:

<p class="md-caption" translate="vm_stats_score"></p> 

現在,我想這個分配給角轉換需要一個ID,但每當我做

$translateProvider.translations('en', { 
    vm_stats_score: 'Today from {{::vm.stats.votes}} votes' 
}); 

它不包含值我想要綁定它。

這樣做的正確方法是什麼?

回答

2

this你可以做到以下幾點:

<p class="md-caption" translate="vm_stats_score" translate-compile translate-values="{'votes': vm.stats.votes}"></p> 

這將增加您通過translate-values傳遞到<p>值。

正如您在示例中看到的,我無法使其與一次性綁定一起工作。這意味着您將不得不將您的字符串定義更改爲:

$translateProvider.translations('en', { 
    vm_stats_score: 'Today from {{vm.stats.votes}} votes' 
}); 
+2

是的!翻譯價值就是訣竅。一次性綁定可以像這樣''vm_stats_score:'今天來自{{:: count}} votes'',在我的html中有'translate-values =「{count:vm.stats.votes}」'。謝謝! – Darko

1

你不能直接綁定,但還有另一種方式:

在你的翻譯文件,使變量輸入,如:

{ 
    "vm_stats_score": 'Today from {{votes}} votes' 
} 

在你html傳遞值,如:

<p class="md-caption" translate="vm_stats_score" translate-values="{ votes: vm.stats.votes"></p> 

Example plunkerRead more on doc.

+2

是!翻譯票做到了。非常感謝! – Darko