Emberjs ошибка? Обозреватель вызывается при изменении значения, но другие привязки к тому же значению не обновляются - PullRequest
0 голосов
/ 14 марта 2012

У меня есть наблюдатель со значением «App.selectedValue». У меня также есть другой объект Ember, который имеет привязку (App.someObj.appValueBinding) к App.selectedValue. Однако когда вызывается мой наблюдатель, привязка App.someObj не обновляется.

Это показано в http://jsfiddle.net/Ur2Qj/8/

В jsfiddle вы можете увидеть в отладчике Chrome или FireBug, что App.selectedValue и App.someObj.appValue имеют разные значения, даже если последний связан с первым.

Похоже, что привязка должна быть обновлена ​​при вызове наблюдателя. Это ожидаемое поведение в Emberjs или это ошибка? Есть ли обходной путь?

Спасибо за просмотр!

1 Ответ

2 голосов
/ 14 марта 2012

Взгляните на это: http://jsfiddle.net/ud3323/GUHCD/ (в JavaScript; мне не нравится CoffeeScript ... извините).

Две основные вещи, которые вы ошиблись, это неправильное использование get() и set(), и в вашем обозревателе вам нужно установить App.someController.content после окончания текущего цикла выполнения (что означает после всех других привязок) состоялись). Вы делаете это с помощью Ember.run.next(). Вы также можете использовать Ember.run.sync() там же.

Да, и вам нужно использовать jQuery 1.7.1. Версия 1.5.2 не совместима с Ember.

...