EmberJS - 手动绑定控制器以查看

时间:2013-01-09 04:59:55

标签: binding ember.js requirejs

最近EmberJS发生了很大变化(路由器......),而且我在不到一个月前开始写的代码现在已经破了。 我现在遇到的一个问题是我无法手动将控制器绑定到视图。

我正在使用requireJS ......

所以我习惯于做这样的事情(这里定义我的菜单和菜单项的视图),以实际获取Controller内容和选定的属性。

define
(
    'app/common/views/menu',
    [
        'text!app/common/templates/menu.hbs',
        'ember'
    ],
    /**
     * Menu view
     *
     * @param template
     * @returns Class
     */
    function( template )
    {
        return Ember.View.extend
        ({
            controllerBinding : 'controller.controllers.menuController',
            selectedBinding: 'controller.selected',
            template: Ember.Handlebars.compile( template ),
            NavItemView: Ember.View.extend
            ({
                tagName: 'li',
                classNameBindings: 'isActive:active'.w(),
                isActive: function()
                {
                    return this.get('item') === this.get('parentView.selected');
                }.property('item', 'parentView.selected').cacheable()
            })
        })
    }
);

看起来'controller.controllers.menuController'不再存在了。 我已经能够在容器缓存'container.cache.contoller:menu'中找到该类,但我的视图控制器仍然为null。 我还尝试在App.MenuController

中定义Application.create({})

有什么想法吗?

另一方面,如果有人使用最新的(github)EmberJS和requireJS有一个工作示例我将非常感兴趣:)

干杯。

1 个答案:

答案 0 :(得分:0)

这是最新的TODOMVC Ember / require.js! :D我会更明确地回答你的问题:

https://github.com/sh4n3d4v15/ember-todos