2016-10-10 80 views
0

沒有{{outlet}}幫助程序,我的模板正在通過應用程序模板呈現。是否必須在應用程序模板中使用{{outlet}?

這是可行的,因爲我已經讀過模板將通過{{outlet}}呈現。

+3

請問您能解釋一下情況嗎?你是說application.hbs文件正在呈現,並且不包含插座?或者即使在application.hbs中沒有'{{outlet}}',其他模板也正在呈現? – bambery

回答

2

要將任何子路由呈現到其父路由器中,都需要一個出口。如果您的應用程序路線的模板沒有插座,則不會呈現子路線。但是,如果您沒有定義應用程序模板,則將渲染子路由,就好像您編寫了僅包含{{outlet}}的模板。

Check out this twiddle其中application.hbs的出口已被註釋掉。沒有插座,仍然呈現application.hbs的內容(包括組件和部分),但不渲染route.hbs。如果您刪除application.hbs的第2行以取消註釋插座,則會看到route.hbs的內容呈現爲application.hbs的出口。現在,如果您使用文件菜單刪除application.hbs,則只會呈現route.hbs的內容。

相關問題