BackboneJS - Guida rapida
BackboneJS è un file lightweight JavaScript libraryche permette di sviluppare e strutturare le applicazioni lato client che girano in un browser web. Offre un framework MVC che astrae i dati in modelli, DOM in viste e lega questi due eventi utilizzando.
History- BackboneJS è stato sviluppato da Jeremy Ashkenas ed è stato inizialmente rilasciato il 13 ottobre ° 2010.
Quando usare Backbone
Considera che stai creando un'applicazione con numerose righe di codice utilizzando JavaScript o jQuery. In questa applicazione, se:
aggiungere o sostituire elementi DOM all'applicazione o
fare alcune richieste o
mostra l'animazione nell'applicazione o
aggiungi più righe al tuo codice,
allora la tua applicazione potrebbe diventare complicata.
Se vuoi un design migliore con meno codice, allora è meglio usare la libreria BackboneJS che fornisce buone funzionalità, è ben organizzata e strutturata per lo sviluppo della tua applicazione.
BackboneJS comunica tramite eventi; questo garantisce di non rovinare l'applicazione. Il tuo codice sarà più pulito, più gradevole e facile da mantenere.
Caratteristiche
Di seguito è riportato un elenco delle funzionalità di BackboneJS:
BackboneJS consente lo sviluppo di applicazioni e frontend in un modo molto più semplice utilizzando le funzioni JavaScript.
BackboneJS fornisce vari elementi costitutivi come modelli, viste, eventi, router e raccolte per l'assemblaggio delle applicazioni Web lato client.
Quando un modello cambia, aggiorna automaticamente l'HTML della tua applicazione.
BackboneJS è una semplice libreria che aiuta a separare la logica dell'interfaccia utente e di business.
È una libreria gratuita e open source e contiene oltre 100 estensioni disponibili.
Agisce come una spina dorsale per il tuo progetto e aiuta a organizzare il tuo codice.
Gestisce il modello di dati che include i dati dell'utente e visualizza tali dati sul lato server con lo stesso formato scritto sul lato client.
BackboneJS ha una dipendenza morbida con jQuery e una forte dipendenza con Underscore.js.
Permette di creare applicazioni web lato client o applicazioni mobili in un formato ben strutturato e organizzato.
BackboneJS è molto facile da configurare e utilizzare. Questo capitolo discuterà il download e la configurazione diBackboneJS Library.
BackboneJS può essere utilizzato nei seguenti due modi:
- Download della libreria dell'interfaccia utente dal suo sito Web ufficiale.
- Download della libreria dell'interfaccia utente da CDN.
Download della libreria dell'interfaccia utente dal suo sito Web ufficiale
Quando apri il link http://backbonejs.org/, vedrai uno screenshot come mostrato di seguito -
Come puoi vedere, ci sono tre opzioni per il download di questa libreria:
Development Version - Fare clic con il pulsante destro del mouse su questo pulsante e salvare con nome per ottenere la fonte completa JavaScript library.
Production Version - Fare clic con il tasto destro su questo pulsante e salvare con nome e si ottiene il file Backbone-min.js library file che è compresso e compresso con gzip.
Edge Version - Fare clic con il tasto destro su questo pulsante e salvare con nome e si ottiene un file unreleased version, cioè, lo sviluppo è in corso; quindi è necessario utilizzarlo a proprio rischio.
Dipendenze
BackboneJS dipende dai seguenti file JavaScript:
Underscore.js- Questa è l'unica dipendenza difficile che deve essere inclusa. Puoi ottenerlo da qui .
jQuery.js- Includere questo file per la persistenza RESTful, il supporto della cronologia tramite Backbone.Router e la manipolazione DOM con Backbone.View. Puoi ottenerlo da qui .
json2.js- Includere questo file per il supporto di Internet Explorer precedente. Puoi ottenerlo da qui .
Scarica la libreria dell'interfaccia utente da CDN
Un CDN o Content Delivery Networkè una rete di server progettata per fornire file agli utenti. Se si utilizza un collegamento CDN nella propria pagina Web, si sposta la responsabilità di ospitare i file dai propri server a una serie di quelli esterni. Questo offre anche un vantaggio che se il visitatore della tua pagina web ha già scaricato una copia di BackboneJS dallo stesso CDN, non dovrà essere scaricata nuovamente.
Come detto sopra, BackboneJS ha una dipendenza dal seguente JavaScript:
- jQuery
- Underscore
Quindi CDN per tutto quanto sopra è il seguente:
<script type = "text/javascript"
src = "https://ajax.googleapis.com/ajax/libs/jquery/1.5.2/jquery.min.js"></script>
<script type = "text/javascript"
src = "https://ajax.cdnjs.com/ajax/libs/underscore.js/1.1.4/underscore-min.js"></script>
<script type = "text/javascript"
src = "https://ajax.cdnjs.com/ajax/libs/backbone.js/0.3.3/backbone-min.js"></script>
Note - Stiamo utilizzando le versioni CDN della libreria durante questo tutorial.
Esempio
Creiamo un semplice esempio usando BackboneJS.
<!DOCTYPE html>
<html>
<head>
<meta charset = "UTF-8">
<meta http-equiv = "X-UA-Compatible" content = "IE = edge,chrome = 1">
<title>Hello World using Backbone.js</title>
</head>
<body>
<!-- ========= -->
<!-- Your HTML -->
<!-- ========= -->
<div id = "container">Loading...</div>
<!-- ========= -->
<!-- Libraries -->
<!-- ========= -->
<script src = "https://code.jquery.com/jquery-2.1.3.min.js"
type = "text/javascript"></script>
<script src = "https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.3.3/underscore-min.js"
type = "text/javascript"></script>
<script src = "https://cdnjs.cloudflare.com/ajax/libs/backbone.js/0.9.2/backbone-min.js"
type = "text/javascript"></script>
<!-- =============== -->
<!-- Javascript code -->
<!-- =============== -->
<script type = "text/javascript">
var AppView = Backbone.View.extend ({
// el - stands for element. Every view has an element associated with HTML content, will be rendered.
el: '#container',
// It's the first function called when this view is instantiated.
initialize: function() {
this.render();
},
// $el - it's a cached jQuery object (el), in which you can use jQuery functions to push content.
//Like the Hello TutorialsPoint in this case.
render: function() {
this.$el.html("Hello TutorialsPoint!!!");
}
});
var appView = new AppView();
</script>
</body>
</html>
I commenti sul codice sono autoesplicativi. Di seguito vengono forniti alcuni dettagli in più:
C'è un codice html all'inizio del tag body
<div id = "container">Loading...</div>
Questo stampa Loading...
Successivamente, abbiamo aggiunto i seguenti CDN
<script src = "https://code.jquery.com/jquery-2.1.3.min.js"
type = "text/javascript"></script>
<script src = "https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.3.3/underscore-min.js"
type = "text/javascript"></script>
<script src = "https://cdnjs.cloudflare.com/ajax/libs/backbone.js/0.9.2/backbone-min.js"
type = "text/javascript"></script>
Successivamente, abbiamo il seguente script:
var AppView = Backbone.View.extend ({
// el - stands for element. Every view has an element associated with HTML content,
//will be rendered.
el: '#container',
// It's the first function called when this view is instantiated.
initialize: function() {
this.render();
},
// $el - it's a cached jQuery object (el), in which you can use jQuery functions to push content.
//Like the Hello World in this case.
render: function() {
this.$el.html("<h1>Hello TutorialsPoint!!!</h1>");
}
});
var appView = new AppView();
I commenti sono autoesplicativi. Nell'ultima riga, stiamo inizializzandonew AppView(). Questo stamperà "Hello TutorialsPoint" nel filediv with id = "container"
Salva questa pagina come myFirstExample.html. Aprilo nel tuo browser e lo schermo mostrerà il testo seguente.
BackboneJS fornisce una struttura alle applicazioni web che consente di separare la logica di business e la logica dell'interfaccia utente. In questo capitolo, discuteremo lo stile architettonico dell'applicazione BackboneJS per l'implementazione delle interfacce utente. Il diagramma seguente mostra l'architettura di BackboneJS -
L'architettura di BackboneJS contiene i seguenti moduli:
- Richiesta HTTP
- Router
- View
- Events
- Model
- Collection
- Fonte di dati
Parliamo ora in dettaglio di tutti i moduli.
Richiesta HTTP
Il client HTTP invia una richiesta HTTP a un server sotto forma di un messaggio di richiesta in cui browser web, motori di ricerca, ecc. Agiscono come client HTTP. L'utente richiede un file come documenti, immagini, ecc., Utilizzando il protocollo di richiesta HTTP. Nel diagramma sopra, puoi vedere che il client HTTP utilizza il router per inviare la richiesta del client.
Router
Viene utilizzato per instradare le applicazioni lato client e connetterle ad azioni ed eventi tramite URL. È una rappresentazione URL degli oggetti dell'applicazione. Questo URL viene modificato manualmente dall'utente. L'URL viene utilizzato dal backbone in modo che possa capire quale stato dell'applicazione deve essere inviato o presentato all'utente.
Il router è un meccanismo che può copiare gli URL per raggiungere la vista. Il router è necessario quando le applicazioni Web forniscono URL collegabili, segnalibri e condivisibili per posizioni importanti nell'app.
Nell'architettura sopra, il router che invia una richiesta HTTP alla vista. È una funzionalità utile quando un'applicazione richiede capacità di routing.
Visualizza
Le viste BackboneJS sono responsabili di come e cosa visualizzare dalla nostra applicazione e non contengono markup HTML per l'applicazione. Specifica un'idea alla base della presentazione dei dati del modello all'utente. Le visualizzazioni vengono utilizzate per riflettere "l'aspetto del modello di dati".
Le classi di visualizzazione non sanno nulla di HTML e CSS e ogni visualizzazione può essere aggiornata in modo indipendente quando il modello cambia senza dover ricaricare l'intera pagina. Rappresenta la parte logica dell'interfaccia utente nel DOM.
Come mostrato nell'architettura sopra, la Vista rappresenta l'interfaccia utente che è responsabile della visualizzazione della risposta alla richiesta dell'utente eseguita utilizzando il Router.
Eventi
Gli eventi sono le parti principali di qualsiasi applicazione. Associa gli eventi personalizzati dell'utente a un'applicazione. Possono essere combinati in qualsiasi oggetto e sono in grado di associare e attivare eventi personalizzati. È possibile associare gli eventi personalizzati utilizzando il nome desiderato di propria scelta.
In genere, gli eventi vengono gestiti in modo sincrono con il flusso del loro programma. Nell'architettura sopra, è possibile vedere quando si verifica un evento, rappresenta i dati del modello utilizzando la vista.
Modello
È il cuore dell'applicazione JavaScript che recupera e popola i dati. I modelli contengono i dati di un'applicazione, la logica dei dati e rappresentano l'oggetto dati di base nel framework.
I modelli rappresentano entità aziendali con alcune logiche aziendali e convalide aziendali. Sono utilizzati principalmente per l'archiviazione dei dati e la logica aziendale. I modelli possono essere recuperati e salvati nella memoria dati. Un modello prende la richiesta HTTP dagli eventi passati dalla vista utilizzando il router e sincronizza i dati dal database e invia la risposta al client.
Collezione
Una raccolta è un insieme di modelli che lega gli eventi, quando il modello è stato modificato nella raccolta. La raccolta contiene un elenco di modelli che possono essere elaborati nel ciclo e supporta l'ordinamento e il filtro. Quando si crea una raccolta, possiamo definire il tipo di modello che la raccolta avrà insieme all'istanza delle proprietà. Qualsiasi evento attivato su un modello si attiverà anche sulla raccolta nel modello.
Prende anche la richiesta dalla vista, associa gli eventi e sincronizza i dati con i dati richiesti e invia la risposta al client HTTP.
Fonte di dati
È la connessione impostata a un database da un server e contiene le informazioni richieste dal client. Il flusso dell'architettura BackboneJS può essere descritto come mostrato nei seguenti passaggi:
Un utente richiede i dati utilizzando il router, che instrada le applicazioni agli eventi utilizzando gli URL.
La vista rappresenta i dati del modello per l'utente.
Il modello e la raccolta recuperano e popolano i dati dal database associando eventi personalizzati.
Nel prossimo capitolo capiremo il significato degli eventi in BackboneJS.
Gli eventi sono in grado di associare oggetti e attivare eventi personalizzati, ovvero è possibile associare gli eventi personalizzati utilizzando il nome desiderato di nostra scelta.
La seguente tabella elenca tutti i metodi che puoi usare per manipolare gli eventi BackboneJS -
S.No. | Metodi e descrizione |
---|---|
1 | sopra Associa un evento a un oggetto ed esegue il callback ogni volta che viene generato un evento. |
2 | spento Rimuove le funzioni di callback o tutti gli eventi da un oggetto. |
3 | trigger Richiama le funzioni di callback per gli eventi specificati. |
4 | una volta Estende la classe backbone.Model durante la creazione del proprio modello backbone. |
5 | ascoltare Informa un oggetto di ascoltare un evento su un altro oggetto. |
6 | stopListening Può essere utilizzato per interrompere l'ascolto di eventi sugli altri oggetti. |
7 | ListenToOnce Fa sì che l'ascolto si verifichi solo una volta prima che la funzione di callback venga rimossa. |
Catalogo degli eventi integrati
BackboneJS consente l'uso di eventi globali laddove necessario nella tua applicazione. Contiene alcuni degli eventi incorporati con argomenti come mostrato nella tabella seguente:
S.No. | Eventi e descrizione |
---|---|
1 | "add"(model, collection, options) Viene utilizzato quando un modello viene aggiunto alla raccolta. |
2 | "remove"(model, collection, options) Rimuove un modello dalla collezione. |
3 | "reset"(collection, options) Viene utilizzato per ripristinare il contenuto della raccolta. |
4 | "sort"(collection, options) Viene utilizzato quando è necessario ricorrere a una raccolta. |
5 | "change"(model, options) Viene utilizzato quando si devono apportare modifiche agli attributi di un modello. |
6 | "change:[attribute]"(model, value, options) Viene utilizzato quando è presente un aggiornamento in un attributo. |
7 | "destroy"(model, collection, options) Spara quando il modello viene distrutto. |
8 | "request"(model_or_collection, xhr, options) Viene utilizzato quando un modello o una raccolta inizia a richiedere al server. |
9 | "sync"(model_or_collection, resp, options) Viene utilizzato quando un modello o una raccolta viene sincronizzato correttamente con il server. |
10 | "error"(model_or_collection, resp, options) Si attiva quando si verifica un errore nella richiesta al server. |
11 | "invalid"(model, error, options) Quando si verifica un errore nella convalida del modello, restituisce non valido. |
12 | "route:[name]"(params) Quando c'è una corrispondenza di percorso specifica, questo evento può essere utilizzato. |
13 | "route"(route,params) Viene utilizzato quando c'è una corrispondenza con qualsiasi percorso. |
14 | "route"(router, route, params) Viene utilizzato dalla cronologia quando esiste una corrispondenza con qualsiasi percorso. |
15 | "all" Si attiva per tutti gli eventi attivati dal nome dell'evento che passa come primo argomento. |
I modelli contengono dati dinamici e la relativa logica. Logiche come conversioni, convalide, proprietà calcolate e controllo degli accessi rientrano nella categoria Modello. Poiché contiene tutti i dati dell'applicazione, un modello viene anche chiamatoheart of JavaScript application.
La tabella seguente elenca tutti i metodi che è possibile utilizzare per manipolare il modello BackboneJS -
S.No. | Metodi e descrizione |
---|---|
1 | estendere Estende il backbone.Model durante la creazione del proprio modello di spina dorsale. |
2 | inizializzare Quando viene creata un'istanza del modello, il costruttore della classe viene chiamato e viene richiamato definendo la funzione di inizializzazione quando viene creato il modello. |
3 | ottenere Ottiene il valore di un attributo sul modello. |
4 | impostato Imposta il valore di un attributo nel modello. |
5 | fuga È come il file get funzione, ma restituisce la versione con escape HTML dell'attributo di un modello. |
6 | ha Restituisce vero, se il valore dell'attributo è definito con un valore non nullo o un valore non undefined. |
7 | non settato Rimuove un attributo da un modello backbone. |
8 | chiaro Rimuove tutti gli attributi, compreso l'attributo id da un modello backbone. |
9 | id Identifica in modo univoco l'entità del modello, che potrebbe essere impostata manualmente quando un modello viene creato o popolato o quando un modello viene salvato sul server. |
10 | idAttribute Definisce l'identificatore univoco di un modello che contiene il nome del membro della classe che verrà utilizzato come id. |
11 | cid È un ID client generato automaticamente da Backbone che identifica in modo univoco il modello sul client. |
12 | attributi Gli attributi definiscono la proprietà di un modello. |
13 | cambiato Modifica tutti gli attributi che sono cambiati dopo aver impostato gli attributi utilizzando il set() metodo. |
14 | impostazioni predefinite Imposta un valore predefinito su un modello, ciò significa che se l'utente non specifica alcun dato, il modello non cadrà con una proprietà vuota. |
15 | toJSON Restituisce una copia degli attributi come oggetto per la stringa JSON. |
16 | sincronizzazione Viene utilizzato per comunicare con il server e per rappresentare lo stato di un modello. |
17 | fetch Accetta i dati dal server delegando sync() metodo nel modello. |
18 | Salva Salva i dati del modello delegando a sync() metodo che legge e salva il modello ogni volta che un Backbone lo chiama. |
19 | distruggere Distrugge o rimuove il modello dal server utilizzando l'estensione Backbone.sync metodo che delega la richiesta HTTP di "cancellazione". |
20 | convalidare Se l'input non è valido, restituisce un messaggio di errore specificato o se l'input è valido, non specifica nulla e visualizza semplicemente il risultato. |
21 | errore di convalida Visualizza l'errore di convalida, se la convalida non riesce o dopo il invalid viene attivato l'evento. |
22 | è valido Controlla lo stato del modello utilizzando il validate() metodo e controlla anche le convalide per ogni attributo. |
23 | url Viene utilizzato per l'istanza del modello e restituisce l'URL in cui si trova la risorsa del modello. |
24 | urlRoot Abilita la funzione URL utilizzando l'ID modello per generare l'URL. |
25 | analizzare Restituisce i dati del modello passando attraverso l'oggetto risposta e rappresenta i dati nel formato JSON. |
26 | clone Viene utilizzato per creare una copia completa di un modello o per copiare un oggetto del modello su un altro oggetto. |
27 | è cambiato Restituisce vero, se l'attributo viene modificato dall'ultimo set. |
28 | è nuovo Determina se il modello è nuovo o esistente. |
29 | changeAttributes Restituisce gli attributi del modello che sono cambiati dall'ultimo set oppure diventa falso, se non ci sono attributi. |
30 | precedente Determina il valore precedente dell'attributo modificato. |
31 | previousAttributes Restituisce lo stato di tutti gli attributi prima dell'ultimo evento di modifica. |
Metodi di sottolineatura
Ce ne sono sei Underscore.js metodi che forniscono le loro funzionalità da utilizzare su Backbone.Model.
S.No. | Metodi e descrizione |
---|---|
1 | _.keys(object) Viene utilizzato per accedere alle proprietà enumerabili dell'oggetto. |
2 | _.values(object) Viene utilizzato per ottenere i valori delle proprietà degli oggetti. |
3 | _.pairs(object) Descrive le proprietà dell'oggetto in termini di coppie di valori chiave. |
4 | _.invert(object) Restituisce la copia dell'oggetto, in cui le chiavi sono diventate i valori e viceversa. |
5 | _.pick(object, *keys) Restituisce la copia dell'oggetto e indica quali chiavi ritirare. |
6 | _.omit(object, *keys) Restituisce la copia dell'oggetto e indica quali chiavi omettere. |
Le collezioni sono insiemi ordinati di modelli. Dobbiamo solo estendere la classe di raccolta del backbone per creare la nostra raccolta. Qualsiasi evento attivato su un modello in una raccolta verrà attivato anche direttamente nella raccolta. Ciò consente di ascoltare le modifiche ad attributi specifici in qualsiasi modello in una raccolta.
La seguente tabella elenca tutti i metodi che puoi usare per manipolare la BackboneJS-Collection -
S.No. | Metodi e descrizione |
---|---|
1 | estendere Estende la classe di raccolta del backbone per creare una raccolta. |
2 | modello Per specificare la classe del modello, è necessario sovrascrivere la proprietà del modello della classe della raccolta. |
3 | inizializzare Quando viene creata un'istanza del modello, viene richiamata definendo la funzione di inizializzazione al momento della creazione della raccolta. |
4 | Modelli Matrice di modelli che vengono creati all'interno della collezione. |
5 | toJSON Restituisce la copia degli attributi di un modello utilizzando il formato JSON nella raccolta. |
6 | sincronizzazione Rappresenta lo stato del modello e utilizza Backbone.sync per visualizzare lo stato della raccolta. |
7 | Inserisci Aggiungi un modello o una serie di modelli alla raccolta. |
8 | rimuovere Rimuove un modello o una serie di modelli dalla raccolta. |
9 | Ripristina Reimposta la raccolta e la popola con una nuova serie di modelli o svuota l'intera raccolta. |
10 | impostato Viene utilizzato per aggiornare la raccolta con una serie di elementi in un modello. Se viene trovato un nuovo modello, gli articoli verranno aggiunti a quel modello. |
11 | ottenere Viene utilizzato per recuperare il modello da una raccolta utilizzando l'estensione idor cid. |
12 | a Recupera il modello da una raccolta utilizzando l'indice specificato. |
13 | Spingere È simile al metodo add () che prende l'array di modelli e spinge i modelli alla raccolta. |
14 | pop È simile al metodo remove () che prende l'array di modelli e rimuove i modelli dalla collezione. |
15 | unshift Aggiungi un modello specificato all'inizio di una raccolta. |
16 | cambio Rimuove il primo elemento dalla raccolta. |
17 | fetta Visualizza la copia superficiale degli elementi dal modello di raccolta. |
18 | lunghezza Conta il numero di modelli nella collezione. |
19 | comparatore Viene utilizzato per ordinare gli elementi nella raccolta. |
20 | ordinare Ordina gli elementi nella raccolta e utilizza la proprietà di confronto per ordinare gli elementi. |
21 | cogliere Recupera gli attributi dal modello nella raccolta. |
22 | dove Viene utilizzato per visualizzare il modello utilizzando l'attributo corrispondente nella raccolta. |
23 | findWhere Restituisce il modello, che corrisponde all'attributo specificato nella raccolta. |
24 | url Crea un'istanza della raccolta e restituisce dove si trovano le risorse. |
25 | analizzare Restituisce i dati della raccolta passando attraverso l'oggetto risposta e rappresenta i dati in formato JSON. |
26 | clone Restituisce la copia superficiale dell'oggetto specificato. |
27 | fetch Estrae i dati dal modello nella raccolta utilizzando il metodo di sincronizzazione. |
28 | creare Crea una nuova istanza del modello nella raccolta. |
Metodi di sottolineatura
La tabella seguente elenca i file Underscore.js metodi che forniscono la loro funzionalità da utilizzare su Backbone.Collection.
S.No. | Metodi e descrizione |
---|---|
1 | _.each(list, iteratee, [context]) Itera ciascuno degli elementi nella raccolta utilizzando la funzione iteratee. |
2 | _.map(list, iteratee, [context]) Mappa ogni valore e li visualizza in un nuovo array di valori utilizzando il iteratee funzione. |
3 | _.reduce(list, iteratee, memo, [context]) Riduce l'elenco di valori in un unico valore ed è anche noto come inject e foldl. |
4 | _.reduceRight(list, iteratee, memo, [context]) È la versione associativa giusta di reduce. |
5 | _.find(list, predicate, [context]) Trova ogni valore e restituisce il primo che supera il predicato o il test. |
6 | _.filter(list, predicate, [context]) Filtra ogni valore e restituisce la matrice di valori che supera il predicato o il test. |
7 | _.reject(list, predicate, [context]) Restituisce gli elementi rifiutati nell'elenco che non superano i valori previsti. |
8 | _.every(list, predicate, [context]) Restituisce vero, se gli elementi nell'elenco superano i valori previsti. |
9 | _.some(list, predicate, [context]) Restituisce vero, se gli elementi nell'elenco superano i valori previsti. |
10 | _.contains(list, value, [fromIndex]) Restituisce vero, se un valore è presente nell'elenco. |
11 | _.invoke(list, methodName, *arguments) Richiama il nome del metodo utilizzando methodName() su ogni valore nell'elenco. |
12 | _.max(list, [iteratee], [context]) Specifica il valore massimo nell'elenco. |
13 | _.min(list, [iteratee], [context]) Specifica il valore minimo nell'elenco. |
14 | _.sortBy(list, [iteratee], [context]) Restituisce gli elementi ordinati in ordine crescente utilizzando iteratee nell'elenco. |
15 | _.groupBy(list, [iteratee], [context]) Divide i valori della raccolta negli insiemi, raggruppati utilizzando il iteratee nella lista. |
16 | _.shuffle(list) Restituisce la copia mescolata della lista. |
17 | _.toArray(list) Definisce un array della lista. |
18 | _.size(list) Definisce il numero di valori nell'elenco. |
19 | _.first(array, [n]) Specifica il primo elemento dell'array nell'elenco. |
20 | _.initial(array, [n]) Restituisce tutto, ma specifica l'ultima voce dell'array nell'elenco. |
21 | _.last(array, [n]) Specifica l'ultimo elemento dell'array nell'elenco. |
22 | _.rest(array, [index]) Definisce gli elementi rimanenti nell'array. |
23 | _.without(array, *values) Restituisce i valori di tutte le istanze che vengono rimosse nell'elenco. |
24 | _.indexOf(array, value, [isSorted]) Restituisce il valore se si trova in un indice specificato o restituisce -1, se non viene trovato. |
25 | _.indexOf(array, value, [fromIndex]) Restituisce l'ultima occorrenza del valore nell'array o restituisce -1, se non viene trovato. |
26 | _.isEmpty(object) Restituisce vero se non ci sono valori nell'elenco. |
27 | _.chain(obj) Restituisce un oggetto avvolto. |
Il router viene utilizzato per instradare le applicazioni lato client e definisce la rappresentazione URL dell'oggetto dell'applicazione. Un router è necessario quando le applicazioni web forniscono URL collegabili, segnalibri e condivisibili per posizioni importanti nell'app.
La tabella seguente elenca i metodi che possono essere utilizzati per manipolare il file BackboneJS - Router -
S.No. | Metodi e descrizione |
---|---|
1 | estendere Estende la classe del router del backbone. |
2 | itinerari Definisce la rappresentazione URL degli oggetti delle applicazioni. |
3 | inizializzare Crea un nuovo costruttore per l'istanza del router. |
4 | itinerario Crea un percorso per il router. |
5 | navigare Viene utilizzato per aggiornare l'URL nelle applicazioni. |
6 | eseguire Viene utilizzato quando una rotta corrisponde al callback corrispondente. |
Mantiene una traccia della cronologia, corrisponde al percorso appropriato, attiva i callback per gestire gli eventi e abilita il routing nell'applicazione.
inizio
Questo è l'unico metodo che può essere utilizzato per manipolare il file BackboneJS-History. Inizia ad ascoltare le rotte e gestisce la cronologia per gli URL segnalabili.
Sintassi
Backbone.history.start(options)
Parametri
options - Le opzioni includono parametri come pushState e hashChange usato con la storia.
Esempio
<!DOCTYPE html>
<html>
<head>
<title>History Example</title>
<script src = "https://code.jquery.com/jquery-2.1.3.min.js"
type = "text/javascript"></script>
<script src = "https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.8.2/underscore-min.js"
type = "text/javascript"></script>
<script src = "https://cdnjs.cloudflare.com/ajax/libs/backbone.js/1.1.2/backbone-min.js"
type = "text/javascript"></script>
</head>
<script type = "text/javascript">
//'Router' is a name of the router class
var Router = Backbone.Router.extend ({
//The 'routes' maps URLs with parameters to functions on your router
routes: {
"myroute" : "myFunc"
},
//'The function 'myFunc' defines the links for the route on the browser
myFunc: function (myroute) {
document.write(myroute);
}
});
//'router' is an instance of the Router
var router = new Router();
//Start listening to the routes and manages the history for bookmarkable URL's
Backbone.history.start();
</script>
<body>
<a href = "#route1">Route1 </a>
<a href = "#route2">Route2 </a>
<a href = "#route3">Route3 </a>
</body>
</html>
Produzione
Eseguiamo i seguenti passaggi per vedere come funziona il codice sopra:
Salva il codice sopra nel file start.htm file.
Apri questo file HTML in un browser.
NOTE- La funzionalità di cui sopra è correlata alla barra degli indirizzi. Quindi, quando apri il codice sopra nel browser, mostrerà il risultato come segue.
Clicca qui per la demo
Viene utilizzato per rendere persistente lo stato del modello sul server.
La tabella seguente elenca i metodi che possono essere utilizzati per manipolare il file BackboneJS-Sync -
S.No. | Metodi e descrizione |
---|---|
1 | Backbone.sync Mantiene lo stato del modello sul server. |
2 | Backbone.ajax Definisce la funzione ajax personalizzata. |
3 | Backbone.emulateHTTP Se il tuo server web non supporta l'approccio REST o HTTP, attiva Backbone.emulateHTTP. |
4 | Backbone.emulateJSON Viene utilizzato per gestire le richieste codificate con application/json impostando il metodo su true. |
Le visualizzazioni vengono utilizzate per riflettere "l'aspetto del modello di dati". Rappresentano i dati del modello per l'utente. Forniscono l'idea alla base della presentazione dei dati del modello all'utente. Gestisce gli eventi di input dell'utente, associa eventi e metodi, rende il modello o la raccolta e interagisce con l'utente.
La tabella seguente elenca i metodi che possono essere utilizzati per manipolare il file BackboneJS-Views.
S.No. | Metodi e descrizione |
---|---|
1 | estendere Estende il Backbone.View class per creare una classe di visualizzazione personalizzata. |
2 | inizializzare Crea un'istanza della vista utilizzando la nuova parola chiave. |
3 | el Definisce quale elemento utilizzare come riferimento della vista. |
4 | $ el Rappresenta l'oggetto jQuery per l'elemento della vista. |
5 | setElement Specifica l'elemento DOM esistente in un elemento DOM diverso. |
6 | attributi Possono essere utilizzati come attributi dell'elemento DOM nella classe di visualizzazione. |
7 | $ (jQuery) Viene utilizzato come selettore che contiene la funzione $ ed esegue query all'interno dell'elemento della vista. |
8 | modello Durante il rendering della vista, il modello crea copie riutilizzabili del markup e fornisce l'accesso ai dati dell'istanza. |
9 | render Contiene la logica per il rendering di un modello. |
10 | rimuovere Rimuove una vista dal DOM. |
11 | delegateEvents Associa elementi agli elementi DOM specificati con metodi di callback per gestire gli eventi. |
12 | undelegateEvents Rimuove gli eventi delegato dalla visualizzazione. |
La classe di utilità definisce un insieme di metodi utilizzati per implementare l'utilità di backbone.
La tabella seguente elenca i metodi che puoi usare per manipolare il file BackboneJS-Utility -
S.No. | Metodi e descrizione |
---|---|
1 | Backbone.noConflict Visualizza il valore originale dell'oggetto Backbone e consente di memorizzare il riferimento a un backbone. |
2 | Spina dorsale. $ Consente a Backbone di utilizzare un oggetto particolare come libreria DOM. |