2013-04-03 66 views
0

我試圖實現一個非常單一的應用程序,但我有一個(可能是愚蠢的)問題。EmberJS:渲染視圖時出現

我有一個主頁,其中有一個鏈接,用於呈現相冊集合的相冊。

單擊相冊應顯示相冊。

一切正常,除非當我點擊一張專輯沒有任何反應。

我希望要顯示它....

你可以在這裏嘗試活生生的例子:不再有效。

並且源代碼存在:不再有效。

謝謝,這可能是愚蠢的,但我找不到爲什麼它不工作!

回答

2

我想,缺少一個插座。您的AlbumResource嵌套在專輯路線中。因此,專輯路線的模板應包含{{outlet}}。 插座是Ember插入視圖的地方。默認情況下,Embers會嘗試在當前活動模板(您的案例中的相冊)中找到出口,並嘗試在其中注入ChildView(在您的情況下爲AlbumView)。

<h1>Posts</h1> 
<ul> 
{{#each album in controller}} 
    <li>{{#linkTo 'album' album}}{{album.name}}{{/linkTo}}</li> 
{{else}} 
    <li>There are no albums.</li> 
{{/each}} 
</ul> 
{{outlet}} 

備註:注意,它幾乎是無用的SO問題聯繫起來這樣一個複雜的設置。這很難閱讀,而且我發現它(只要我有)就是運氣。更好地設置一個小提琴,或者至少將現場實例與未分類的源相關聯。

+0

你的答案幫助很大!它現在「有用」,但我不想在點擊相冊時看到相冊列表。的確,專輯只顯示在專輯的底部。任何想法 ? – Arkan 2013-04-03 20:03:34

+0

引用Yehuda Katz:「如果你的UI嵌套,你的路線/資源應該嵌套。」如果您的用戶界面不嵌套,請勿嵌套您的路線。將資源拉到頂層而不是嵌套它;-) – mavilein 2013-04-03 20:05:09

+0

我告訴過你這是一個愚蠢的問題:)現在一切都按預期工作。非常感謝 :-) – Arkan 2013-04-03 20:13:28