2012-03-16 10 views
5

Sto scrivendo molte applicazioni Web che richiedono un sacco di contenuto dinamico che viene sostituito in base a varie richieste Ajax al backend PHP + mySQL che è in grado di rispondere a tutti i dati come JSON. Questo potrebbe essere qualcosa come quiz, sondaggi o potrebbe anche essere applicazioni più avanzate che richiedono più aggiornamenti del DOM. Il punto è che l'integrazione con l'HTML (che è codificata da una terza parte) è il più semplice possibile.framework modello Javascript

Poiché si tratta di molte piccole applicazioni e non di un grande sito, sto cercando una libreria che mi aiuti a portare a termine il lavoro velocemente e facile da personalizzare in seguito. Non conosco il modo migliore per farlo, ma so che ci sono varie librerie che fanno ciò di cui ho bisogno (e molto altro).

Caratteristiche richieste:

  • leggero
  • Facile per aggiornare la struttura HTML (anche per HTML-solo codificatori)
  • Compatibile con jQuery
  • Funziona con tutti i browser moderni, tra cui Chrome, Firefox, Safari e IE7 +
  • Funziona con tutti i browser mobili tra cui Android, iOS e Windows Mobile

risposta

2

Il baffo è piuttosto solido, ma ho trovato che fosse un po 'troppo rigido per la cosa del "modello senza logica". Ad esempio, non offre molte piccole sottigliezze che ti aspetteresti in un sistema di template, come una frase "else". Devi fare cose stupide come questo tutto il tempo:

{{#if foo}} 
    <span>foo is set</span> 
{{/if} 
{{^if foo}} 
    <span>foo is not set</span> 
{{/if}} 

Invece, io consiglierei di Handlebars che è costruito sulla cima di Baffo, ma aggiunge alcune funzioni interessanti come aiutanti personalizzati e un migliore supporto al contesto di commutazione.

+0

È passato quasi un anno da quando ho fatto questa domanda. E a questo punto ho optato per i manubri. La mia scelta finale è stata presa quando ho avuto bisogno di usarlo in un'estensione di Chrome dove eval() non è consentito - Handlebars fornisce anche la precompilazione dei modelli. – jack

0

Vorrei provare mustache. L'ho usato in passato ed è abbastanza buono; veloce e intuitivo.

0

Prova JUST. Ha una sintassi simile con EJS ma più potente. Ha funzioni molto utili come ereditarietà, parziali e ridefinizioni di blocchi. Funziona sul lato client e server (node.js).

5

Vorrei provare Distal.

Hai detto che il codice HTML è codificato da una terza parte, quindi ti consigliamo di apportare modifiche minime durante l'integrazione. Con distale aggiungi roba all'HTML esistente e non hai bisogno di spostare le cose.

La sintassi è basata su HTML quindi è adatta per i coder HTML only.

+1

Sembra una libreria davvero bella e si adatta perfettamente alle mie esigenze! Userò il resto della domenica provandolo. Molte grazie! – jack

+1

Distal sembra essere la mia scelta di libreria. Lo accetterò come la risposta corretta. Grazie per le risposte di tutti. – jack

+0

È fantastico, lo adoro davvero. È il primo framework di template non invadente che vedo. – rterrani