2

最近、EmberJSは大きく変更され(ルーターなど)、1か月も経たないうちに書き始めたコードが壊れています。私が今抱えている問題の1つは、コントローラーをビューに手動でバインドできないことです。

ちなみにrequireJSを使っています...

そのため、私は以前、このようなこと(ここでは、メニューとメニュー項目のビューを定義する)を実行して、コントローラーのコンテンツと選択したプロパティを実際に取得することができました。

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'でクラスを見つけることができましたが、ViewControllerはまだnullのままです。私もApp.MenuControllerで定義されてみましたApplication.create({})

何か案が?

ちなみに、誰かが最新の(github)EmberJSとrequireJSを使用した実用的な例を持っているなら、私は非常に興味があります:)

乾杯。

4

1 に答える 1

0

これが最新のTODOMVCEmber/ require.jsです!:D私はあなたの質問にもっと明確に答えるために戻ってきます:

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

于 2013-01-09T08:38:48.170 に答える