Ember JS 1.8.1 + Chrome - Дополнительные пробелы
У меня есть проблема в приложении, над которым я работаю, так как я обновил EmberJS с 1.6.1 до 1.8.1. Это происходит только под Chrome. Проблема в том, что мои шаблоны каким-то образом отображаются с большим количеством дополнительных пробелов вокруг каждого html-узла. Так сказать... вместо:
<div>
[tab]<span>Hello</span>
</div>
Я получаю что-то вроде этого:
<div>[ ][ ][ ][ ][ ][ ][ ][ ][ ]
[ ][ ][ ][ ]<span>Hello</span>[ ][ ][ ][ ]
</div>[ ][ ][ ][ ]
Или, может быть, вы увидите это здесь:
Это явно нарушает стиль. Самое смешное, что когда я удаляю хотя бы один пробел из такой странной конструкции, волшебным образом стиль для данного раздела возвращается (хотя другие пробелы все еще там).
Просто чтобы упомянуть. Я использую ember-grunt-templates 0.4.21 для компиляции. Я знаю, что есть новые версии (0.4.23, я думаю...), и я пытался обновить его, но это не помогает.
Я знаю, что здесь было упоминание: http://emberjs.com/blog/2014/11/04/ember-1-8-1-released.html о проблеме пробелов в Chrome, но там говорится, что люди получают противоположное эффект пропущенных пробелов из-за некоторой ошибки в Chrome.;> Мой экземпляр Chrome использует и собирает все пробелы других людей или как?:-)
Кто-нибудь сталкивался с подобной проблемой (как у меня, а не как упомянутое в примечаниях к выпуску Ember)? Кто-нибудь знает, как от этого избавиться?
Обновление 1:
Я пытался обновить до:
- Эмбер 1,9
- Рули 2.0
- Grunt-Ember-Templates 0.5 альфа
Это исправляет несколько случаев появления пробелов, но некоторые все еще присутствуют. Т.е. это приводит к пробелу перед отображаемым текстом:
<span class="someClass">
{{#if condition}}{{someProperty}}{{else}}{{t 'translationKey'}}{{/if}}
</span>
И это не так:
<span class="someClass">{{#if condition}}{{someProperty}}{{else}}{{t 'translationKey'}}{{/if}}</span>
: - |
1 ответ
Оказывается, это ошибка, связанная с окончанием строки. Я сообщил об этой проблеме здесь: https://github.com/emberjs/ember.js/issues/9945
Решение состоит в том, чтобы убедиться, что кодирование конца строки должно быть Unix-подобным.