Emberルーターアプリケーションをセットアップしようとしていますが、ControllerオブジェクトのconnectOuletメソッドを使用して、ビューを特定のアウトレット(名前の付いたアウトレット、つまり:)に接続できません{{outlet outletName}}
。JSFiddleの例を設定しましたが、誰かが私が間違っていることや、実際にこれを行う方法を教えてもらえますか?
JSFiddle: http: //jsfiddle.net/TmKwd/
Emberルーターアプリケーションをセットアップしようとしていますが、ControllerオブジェクトのconnectOuletメソッドを使用して、ビューを特定のアウトレット(名前の付いたアウトレット、つまり:)に接続できません{{outlet outletName}}
。JSFiddleの例を設定しましたが、誰かが私が間違っていることや、実際にこれを行う方法を教えてもらえますか?
JSFiddle: http: //jsfiddle.net/TmKwd/
ええと、理由を正確に説明することはできませんが、ApplicationControllerをEmber.ObjectControllerとして定義するのではなく、Ember.Controllerとしてのみ定義する必要があります。
アップデート
簡単なデバッグの後、これはapplicationControllerでconnectOutletを呼び出すときです。特に、行set(this, outletName, view);
As outletName
(この例では、これは「1」と「2」です)はapplicationControllerの不明なプロパティであり、applicationControllerをObjectControllerとして定義しているためです。 (したがって、コンテンツプロパティをラップするプロキシ)、Ember.jsは、未定義/nullであるコンテンツのビューを設定しようとします。
その結果、次のエラーがスローされます。
Uncaught Error: assertion failed: Cannot delegate set('one', <App.ViewOneView:ember208>) to the 'content' property of object proxy <App.ApplicationController:ember209>: its 'content' is undefined.