2013-08-30 5 views
1

Обновление до последней версии ember (1.0.0-rc.8). Я нашел разницу в разрешении привязок, и они не работают должным образом. Это пример:Уплотнительное связывание между контроллерами

App.ApplicationController = Ember.Controller.extend({ 
    exploration: Em.Object.create({ 
    activeUser: Em.Object.create(), 
    }), 
}); 

App.PageController = Ember.Controller.extend(
{ 
    needs: ['application'], 
    explorationBinding: 'controllers.application.exploration', 
} 

если я пытаюсь получить исследование свойств по:

result = pageController.get('exploration') 

результат является null. Вместо этого, если я попытаюсь получить

result = pageController.get('controllers.application.exploration') 

результатом является экземпляр объекта исследования.

Это ошибка или нормальное поведение?

UPDATE Проблема решена обновление до последнего релиза 1.0.0 (31/08/2013) и был связан с Issue 3265

ответ

1

Есть несколько небольших вопросов о порядке связывания. Но в основном переплеты быть частично устаревшим в пользу ХП

Таким образом, ваш контроллер должен выглядеть следующим образом:

App.PageController = Ember.Controller.extend({ 
    needs: ['application'], 
    exploration: Ember.computed.alias('controllers.application.exploration') 
}) 
+0

Да правильно использовать этот подход, и это работает. Моя проблема также была связана с проблемой синхронизации при вызове 'setupcontroller' в системе маршрутизации. Если эта функция вызывает связанное свойство, ember не смог ее разрешить. Теперь разрешена версия 1.0.0 – RedBass