JavaScript templating trick or treat?

0

Di recente ho cercato di utilizzare JavaScript per il template e mi chiedevo se fosse possibile utilizzare questo approccio.

Comprendo che il template JavaScript è una forma di template molto comune e molto accettata e vedo i benefici dell'uso di questa tecnica.

La mia domanda deriva più dalla curiosità in quanto la memorizzazione di testo HTML all'interno di uno script si distacca da ciò che in realtà è uno "script", quindi per me ci si sente errati a farlo.

  1. JavaScript era stato originariamente progettato per essere usato come una tecnica di template quando il browser non capisce il tipo di script? O è stato un trucco che le persone hanno scoperto e iniziato a utilizzare come titolari di testo HTML per scopi di template?

  2. Ho letto anche che gli script sconosciuti non vengono elaborati come script e vengono lasciati come blocchi di testo a causa di ragioni di compatibilità - così i nuovi browser possono supportare lingue aggiuntive senza che i browser vecchi si rompano. È forse questa la ragione per cui devi lasciare gli script sconosciuti come blocchi di testo?

Sto cercando di capire perché i browser si comportano come fanno quando vengono trovati script sconosciuti / l'intenzione dietro questo comportamento.

    
posta Brummy 02.05.2016 - 21:16
fonte

1 risposta

2

Stai parlando dell'uso di <script> -elementi per memorizzare i modelli HTML? Lo scopo dell'elemento di script era di incorporare script, ma le specifiche HTML non impongono quali lingue debbano essere supportate dal browser. Nel caso in cui la lingua specificata non sia supportata dal browser, il comportamento predefinito (richiesto da HTML) è semplicemente quello di nascondere il testo. Ciò significa che può essere utilizzato per memorizzare testo e codice arbitrari.

Non penso che i template HTML facessero parte del caso d'uso originale per l'elemento script, ma è comunque un uso legittimo. Nell'attuale HTML, l'elemento script è definito come uno script o un blocco dati , che potrebbe essere qualsiasi tipo di dati arbitrari, compresi ovviamente i modelli HTML.

    
risposta data 02.05.2016 - 22:24
fonte

Leggi altre domande sui tag