あなたはおそらくコンセントを使いたいでしょう。connectOutlet / outlet関数は、他のコントローラー/ビューのペアをレンダリングするためのものです。
人物ビューがあるとしますが、そのビュー内に別のコントローラー/ビューのペアが必要です。このために、名前付きアウトレットを使用する必要があります。テンプレートは次のようになります。
Person View!
{{name}} = the person's name!
{{controller}} = PersonController!
{{outlet other}} = our outlet
次に、ルーター内で別のコントローラー/ビューをそのアウトレットに接続する場合は、personControllerでconnectOutletを使用するだけです。
router.get('personController').connectOutlet('other', 'other');
これにより、OtherControllerとOtherViewが相互に接続され、テンプレートに表示されます。最初のパラメーターはアウトレット名、2番目のパラメーターはコントローラー/ビューです。
これにより、さまざまなコントローラーとビューをそのアウトレットに簡単に交換できます。たとえば、別のconnectOutlet APIを使用すると、次のことができます。
router.get('personController').connectOutlet({
outletName: 'other',
controller: router.get('carsController'),
viewClass: App.CarsView
});
..。
ところで、あなたに元の質問に答えるために。これを行うことにより、ビューから他のコントローラーにアクセスできます{{view controllerBinding="controller.target.otherController"}}
。すべてのコントローラーには、ルーターを指すターゲットプロパティがあります。ただし、このコードの使用はお勧めしません。それはもろく、テストするのが難しく、デバッグするのが難しいです、そして将来戻ってきてあなたを噛むでしょう。