在余烬视图中,我正在尝试完成类似的事情:
{{#if loggedIn}}
<p> I'm Logged In! </p>
{{else}}
{{view App.LoginView contentBinding="App.UserInfo"}}
{{/if}}
这不是开箱即用的,因为 LoginView 的上下文应该是 loginController,并且 *那个控制器的内容”应该是 App.UserInfo。
这个讨论有一些相关的注释,并建议了出口:
奥特莱斯为此提供了一个干净的解决方案 - 例如,我可以这样做:
{{#if loggedIn}}
<p> I'm Logged In! </p>
{{else}}
{{outlet login}}
{{/if}}
然后让路由器将此视图的控制器(称为 homeController)连接到带有 LoginView 和一些上下文的登录出口。
但是,使用插座时,如果loggedIn 属性发生更改,则插座不会重新连接/重绘,因此如果我登录然后再次注销,我会得到一个空白页。
有没有一种很好的方法来使用视图助手绑定适当的控制器和控制器内容,或者以一种在loggedIn属性更改时使其正确重绘的方式设置出口?