我在我的应用程序中使用 Ember i18n。我还想在控制器中使用翻译字符串(大多数情况下在警报或确认消息中)。如何才能做到这一点 ?
见http://jsfiddle.net/cyclomarc/36VS3/2/
单击该按钮应警告“信息”而不是“T1005”...
<script type="text/x-handlebars">
{{t T1005}}<br>
<button {{action 'clickMe' content}}>{{t T1005}} - Click me</button>
</script>
CLDR.defaultLanguage = 'en';
App.ApplicationController = Ember.Controller.extend({
clickMe: function(){
alert('T1005');
}
})
我知道一种可能的解决方法是不再使用警报并确认并用例如引导替代方案替换它们。但是,我可以想象,在某些情况下,您会想要对 Javascript 中的字符串做一些事情(例如,通过 jQuery 左右更新某个标签)。
关于如何在控制器中使用 i18n 字符串的任何想法都是有帮助的。仅当应用程序的所有方面都可以翻译时,使用 i18n 库才有用...