Dovrei dedicare i miei sforzi all'implementazione di knockoutjs o esaminare jQuery Data Link [chiuso]

StackOverflow https://stackoverflow.com/questions/4211906

  •  25-09-2019
  •  | 
  •  

Domanda

Recentemente ho utilizzato la libreria knockout js di Steve Sanderson http://knockoutjs.com/ nel mio sviluppo web lato client.Ho appena scoperto di recente che Microsoft ha contribuito al codice jQuery per un plug-in Data Link che sembra duplicare ciò che mi piace di knockout.

http://weblogs.asp.net/scottgu/archive/2010/10/04/jquery-templates-data-link-and-globalization-accepted-as-official-jquery-plugins.aspx
https://github.com/jquery/jquery-datalink
http://api.jquery.com/category/plugins/data-link/

Dovrei eliminare il mio codice knockout e utilizzare jQuery abbracciato ed esteso?

È stato utile?

Soluzione

mi piacerebbe restare con Knockout personalmente - è già dimostrato di funzionare abbastanza bene , è in fase di sviluppo, e bussa data-link fuori scala quando si confrontano le caratteristiche. In breve, Knockout sembra pronto per il debutto, mentre il data-link si sente incompiuta.

(I STRESS testato Knockout facendolo dati-bind una discesa per un array di 5.000 elementi, determinando inoltre il numero di elementi unici nella matrice e aggiungendo che ad un altro elemento associato a dati. Miei calcoli e la ri- pittura del browser Chrome ha preso molto più a lungo rispetto alla associazione dati e l'aggiornamento.)

Ora, detto questo, vorrei tenere d'occhio il data-link e probabilmente continuerà a giocare con essa - se viene fuori terra, sarà una valida alternativa. (Visto il successo di jquery-tmpl, l'altro pezzo importante di uscire della cooperazione Microsoft-Jquery.)

Il migliore per confrontare Knockout per sarebbe DocumentCloud di backbone . Sto cercando in spina dorsale prossima settimana, quindi non ho alcuna raccomandazione buone per ora, ma sono stato molto impressionato con sottolineatura (un altro dei loro progetti), quindi mi raccomando senz'altro cercando in essa come alternativa.


Il punteggio di 4 anni più tardi
per coloro che si stanno chiedendo

Knockout è stato utilizzato nella produzione di tutti i tipi di progetti per anni, è ora alla versione 3, e ha un ecosistema sano intorno ad esso. jQuery.datalink divenne JSViews , che è ancora in fase beta.

Altri suggerimenti

Ho approfondito approfonditamente Knockout e lo trovo affidabile ed estensibile.Una volta entrato nella mentalità, penso che sia la migliore esperienza per sviluppatori che abbia mai visto nel browser.

Si prega di notare che il collegamento dati jQuery funziona solo su elementi modulo. Knockoutjs lavoro su molti altri tipi di attacchi, come ad esempio gli attributi, css, che è molto utile.

ko è utile per il modello PubSub alle forme. Per utilizzare i widget, si deve scrivere binding personalizzati. ko non supporta direttamente AJAX.

spina dorsale è utile per il modello di persistenza via RESTful JSON. Supporta model / view sincronizzazione debolmente: modello-> Vista tramite modello JS. Visualizza-> modello di widget tramite i gestori di un codice d'obbligo.

ko & spina dorsale non supportano direttamente la convalida. (Io non contare model.validate di BB () perché si deve scrivere il codice per convalidare ogni attributo.) Non hanno un concetto di tipo di dati. (Modelli extjs hanno tipi e validazione Purtroppo, ho trovato extjs di essere inaffidabile e inconsistente (associazione di dati è integrato nella griglia, ma non la forma o proprietà patrimoniale;. Le informazioni sul tipo devono essere immessi sul cols griglia e campi modulo anche se è già presente sul modello).)

Anche se uno impasti ko, spina dorsale, e di convalida jQuery, c'è un sacco di codice da scrivere.

Il framework di interfaccia utente più produttiva che ho trovato è JSF2 quanto gestisce tutto questo. Purtroppo, in pratica ha dei problemi.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top