2012-12-31 11 views
11

Sto iniziando nello sviluppo di javascript e ho fatto un semplice progetto con node.js come un'API di riposo e un client che utilizza backbone, tutto sembra perfettamente funzionante finché non voglio estrarre i miei modelli dal mio js.Caricamento di modelli con backbone js

ho trovato diversi approcci, alcuni di loro con un po 'di tempo (come un anno di età), ma non riesco a capire quale poteva essere migliore: il file

  • Un .js con una var con l'html codice

    pros -> facile da caricare, facile da passare a trattino basso per compilarlo.

    con -> scape ogni singola riga.

    app.templates.view = " \ 
    <h3>something code</h3> \ 
    "; 
    

    modello di carico:

    template: _.template(app.templates.view) 
    

External template in Underscore

  • Utilizzare require.js di caricare con testo plug-in.

    pros -> caricare diversi modelli secondo necessità.

    cons -> che non mi piacciono l'approccio di mettere tutto all'interno di una funzione "loader" ...

    define(["TemplateEngine", "text!templates/template.html"], function(... 
    

RequireJS: Loading modules including templates and CSS

  • Una funzione che carica i modelli con una petizione AJAX.

    pros -> È possibile caricare il modello di cui si ha bisogno e aggiungere possibilità di archiviazione locali.

    con -> Sembra che devo unire tutti i miei modelli in un unico file per gli ambienti di produzione.

    function() { 
    
    var templateLoader = {... $.get calls ...} 
    

Best way to asynchronously load underscore templates

  • E un Jquery plug-in per il modello di carico che mi è piaciuto, ma sembra che non è andata a liberare?

http://api.jquery.com/jQuery.template/

Sembra che richiedono sia l'approccio migliore, ma forse mi manca qualcosa, lo faccio wa non per rendere le cose il più pulito possibile dato che sono nel processo di apprendimento/divertirsi fase: D

Qualsiasi buon articolo o progetto Github con una buona struttura o qualsiasi luce su questo sarà apprezzato.

Grazie.

Excuse alcun grave errore di ortografia, non un oratore inglese :)

--EDIT-- trovato alcuni video interessanti per capire come avviare e avvolgere le cose con require.js http://www.youtube.com/watch?v=VGlDR1QiV3A

http://www.youtube.com/watch?v=M-wjQjsryMY

risposta

2

Si consiglia di utilizzare require.js con il plug-in di testo. Mescolare i modelli html come stringhe nella variabile javascript è una cattiva idea, così come usare qualcosa come <script type="text/template"></script>.

Ecco una serie molto buona su backbone.js che copre anche il caricamento del modello e la costruzione del progetto: http://dailyjs.com/2012/11/29/backbone-tutorial-1/. Qui viene fornito anche il progetto Github.

+0

Thx darò un'occhiata, il

2

Richiedi è una buona opzione tra quelle elencate.

C'è una ragione per cui non avete considerato semplicemente:

  1. Memorizzazione modelli nelle pagine che li utilizzano come <script type='text/template'> nodi?

  2. Memorizzazione di modelli come file di testo (non JS) e caricamento tramite XHR su pagine che li utilizzano?

+0

thx, dando un'occhiata ai tuoi suggerimenti :) – Goofyahead