2015-05-23 40 views
0

我正在使用meteorjs应用meteoric:离子包与水龙头:国际化i18n包。
点击:在HTML模板使用时国际化工作正常,但我没怎么在这样的一个模板使用它:meteoric:离子标签本地化与水龙头:i18n

{{#ionTabs style="ios"}} 
    {{> ionTab title="Welcome" path="tabs.one" iconOff="ios-home-outline" iconOn="ios-home"}} 
{{/ionTabs}} 

这不起作用:

{{#ionTabs style="ios"}} 
     {{> ionTab title={{_ "welcome"}} path="tabs.one" iconOff="ios-home-outline" iconOn="ios-home"}} 
{{/ionTabs}} 

回答

1

它不可能把把手放在其他把手内。你必须创建一个帮手。这很烦人,因为你必须为每一个做。问题是更大气的目的不是与国际化的工作以及尚未:

Template.yourtemplate.helpers({ 
    _title: function() { 
     return TAPi18n.__('welcome'); 
    } 
}); 

哪里yourtemplate是包含标签的模板。

然后你就可以在spacebars表达式中使用_title

{{> ionTab title=_title path="tabs.one" iconOff="ios-home-outline" iconOn="ios-home"}} 

流星正在支持在spacebars报表,但其尚未发布:请参阅:https://meteor.hackpad.com/Blaze-lexical-scope-and-template-arguments-fZP806qG6xQ

更具体地说,你需要什么:https://github.com/meteor/meteor/pull/4101

它应该在下一次更新中,因为它已经在devel上。那么你可以这样做:

{{> ionTab title=(_ "welcome") path="tabs.one" iconOff="ios-home-outline" iconOn="ios-home"}} 
+0

太棒了!感谢workaorund。 –