2013-08-26 4 views
5

È possibile che ember (in particolare il modello dell'applicazione) funzioni all'interno del tag head per modificare dinamicamente elementi come tag title, meta tag, fogli di stile css esterni e favicon?Ember Handlebars Templates in <head> tag

Se sì, quale sarebbe un modo pulito per farlo?

+1

incuriosisce questo pure. In angular.js è più o meno semplice come '' – Donut

+0

usando questo è semplicemente semplice, 'document.getElementsByTag (" head "). InnerHTML + =" ";' questo può essere ottenuto con JavaScript grezzo quindi perché fare affidamento su qualsiasi libreria :) – MarmiK

+2

@MarmiK ha chiesto un modo "pulito": P – albertjan

risposta

10

Per fare questo lavoro, ho creato aiutanti per manubri. Ad esempio, se vuoi cambiare il titolo per le viste che è molto comune, ecco l'helper.

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

ora in qualsiasi modello di vista si può semplicemente aggiungere l'aiutante

{{headTitle 'View Header'}} 

Ecco l'JSbin per verificare se il suo lavoro

+1

Probabilmente dovresti usare 'Ember. $'. Ma per il resto è un bel trucco. – albertjan

+0

modificato la mia risposta come suggerito .. Grazie – thecodejack

+0

aggiornerà i meta tag per il motore del sito sociale come fb, twitter e google? –

Problemi correlati