2015-05-23 1 views
0

Я использую в приложении метеоритов метеор: ионный пакет с краном: пакет i18n для локализации.
Tap: i18n отлично работает при использовании в шаблоне HTML, но я не знаю, как использовать его в шаблоне, например так:Метеорический: локализация ионных вкладок с помощью крана: 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

Его не возможно разместить рули внутри других рулей. Вы должны создать помощника. Это довольно раздражает, так как вам придется делать это за каждого. Вопрос более метеоритный не предназначен для работы с i18n хорошо еще:

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

yourtemplate Где это шаблон, содержащий язычки.

Затем вы можете использовать _title в выражении spacebars:

{{> 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. –