2015-03-11 3 views
0

My ember 1.8 приложение построено с Grunt CLI и переход на ember CLI не работает, но я обновляюсь до ember 1.10, поэтому могу использовать HTMLbars. Приложение использует ember-i18n, поэтому после загрузки и разрешения моделей при переходе к первому представлению я получаю сообщение об ошибке «Хелпер с именем« t »не найден». В 'vendor \ ember-i18n \ lib \ i18n.js' я попытался изменить «Handlebars.registerHelper» на «Ember.HTMLBars._registerHelper», но затем я получаю различные «неопределенные» ошибки из компонента i18n. Я читал, что i18n не поддерживается в ember 1.9+, но мне нужно, чтобы он работал. Как я могу обновить его для работы в 1.10?Как обновить компонент ember-i18n для работы в ember 1.10 с HTMLbars?

+0

Какую версию 'ember-i18n' вы используете? Я просто посмотрел на последний источник, и он использует 'Ember.Handlebars.registerBoundHelper', который должен отлично работать с 1.10. –

+0

Использование lawitschka/ember-i18n.git # master v1.6.3, которая является последней версией от года назад. Он имеет «Handlebars.registerHelper ('t', fn)». Я также попытался изменить использование «Ember.Handlebars.registerBoundHelper()», но затем я получаю ошибки от переменных «attrs», «data» и «view», которые следуют (как я упоминал ранее). Так что да, я думаю, что это заставляет меня пройти мимо проблемы «помощник регистра», но мне нужно, чтобы компонент работал после его регистрации. – bobvan

+0

Моя версия приложения, работающего на ember 1.8.0, предупреждает, что «Глобальный поиск Ember.I18n.translations из шаблона Handelbars устарел». В моей версии ember 1.10.0 это вообще не работает. Компонент i18n принимает параметр «options», поскольку он регистрирует «t», затем «attrs» устанавливается из «options.hash». Когда я использую console.out 'attrs' в рабочей версии, у него есть объект 't' со ссылками на несколько шаблонов hbs, которые используют помощник 't'. В сломанной версии объект «options» имеет очень мало в нем, и нет «t» со ссылками на шаблоны. Поэтому я пытаюсь понять, почему это так. – bobvan

ответ

0

Я не понял, что мой пакет i18n, который не обновлялся в течение года и не поддерживает последний компилятор Ember, был разветвленной версией (lawitschka). Когда я перешел на исходный проект, который является актуальным (jamesarosen), мне удалось настроить работу метки «Locale», изменив «Ember.I18n.set (« переводы », данные)» на «Ember .I18n.translations = data '.

 Смежные вопросы

  • Нет связанных вопросов^_^