2013-08-26 71 views
5

爲了動態地改變諸如標題標籤,meta標籤,外部css樣式表和favicon圖標,是否有可能使ember(特別是應用程序模板)在head標籤內部運行?Ember Handlebars模板<head>標籤

如果是這樣,乾淨的做法是什麼?

+1

好奇這一點。在angular.js中,它簡單得像'' – Donut

+0

使用它簡單易用, 'document.getElementsByTag(「head」)。innerHTML + =「」;'這可以通過原始JavaScript所以爲什麼要依靠任何庫:) – MarmiK

+2

@MarmiK他要求一個「乾淨」的方式:P – albertjan

回答

10

爲了使這項工作,我做了什麼是我創建了手柄助手。例如,如果你想改變很常見的視圖標題,這裏是助手。

Ember.Handlebars.helper('headTitle', function(title) { 
    Ember.$('head').find('title').text(title); 
}, 'title'); 

現在任何視圖模板,你可以只添加輔助

{{headTitle 'View Header'}} 

這裏是JSbin檢查其工作

+1

你應該使用'Ember。$'。但否則很好的黑客。 – albertjan

+0

按照您的建議修改了我的答案..感謝 – thecodejack

+0

它會更新社交網站引擎的元標記,例如fb,twitter和google嗎? –