2012-12-10 8 views
10

Sto creando una webapp utilizzando Node.js + Express.js + socket.io.js sul back-end.Qualsiasi framework JavaScript lato client si integri bene con Node.js + Express.js + socket.io.js?

Alcuni dei framework di front-end più diffusi (Agility, Angular, Backbone, Closure, Dojo, Ember, GWT, jQuery, Knockback, Knockout, Spine, YUI, ecc.) Si integrano bene con questo back-end per "tempo reale" "applicazioni?

Desidero che la mia applicazione abbia un aspetto molto "in tempo reale". In particolare, quando un utente invia un modulo, desidero che le informazioni vengano inviate tramite socket Web al back-end per la convalida e (se passate per la convalida) per essere aggiornate nel database. Quindi, sul lato server verranno utilizzati i socket Web per inviare una conferma che i dati sono stati salvati o un elenco di errori. Userò la risposta del server per aggiornare la pagina utilizzando JavaScript.

So che tutto questo può essere fatto con uno qualsiasi dei framework elencati. Sono interessato alle caratteristiche di particolari framework che aiuteranno il framework ad integrarsi meglio con il backend basato su nodo rispetto agli altri framework.

+1

WebSockets sono fantastici e tutto, ma se lo fai bene puoi ottenere prestazioni molto elevate per applicazioni "ordinarie" dal semplice vecchio HTTP. – Pointy

+0

Posso dire che Backbone, Knockout e CanJS fanno un buon lavoro qui. Non penso che ci sia alcuna differenza nel lavorare con qualcuno di questi che hai citato se usi un backend JSON RESTfull. – rcdmk

+0

Seconding @Pointy - la tua applicazione potrebbe essere un ottimo caso d'uso per websocket, ma almeno lo scenario che hai descritto nella tua domanda sembra un lavoro per il buon vecchio xmlhttprequest. Questo è ovviamente oltre al punto della tua domanda, dovevo solo andare e dirlo comunque. – jevakallio

risposta

1

Dipende dall'app e dalla custodia. Tendo a generare lato server html, quindi ottengo ancora i vantaggi di seo - backbone e altri framework js-ricchi sul lato client hanno lo sfortunato effetto collaterale di non essere scansionabili da Googlebot.

Se è necessaria l'autenticazione per utilizzare l'app, il backbone o un altro dei framework presentati in TODOMVC può essere una buona soluzione.

In genere quando si utilizza socket.io sul lato server, lo si utilizzerà anche sul lato client.

3

Anche Ember si adatta perfettamente.

Vedere Charles Jolley convoy che può essere molto utile per l'integrazione delle risorse sul lato client.

Il pacchetto Ember di NPM viene fornito con un'app di esempio che può essere un buon inizio (basata su convoy).

1

Penso che angular.js sia il migliore per le applicazioni in tempo reale.

  • Associazione dati e Dependency Injection
  • strumenti di test
  • Easy Rest

Ecco some information su framework.

+0

Ho trovato che Angular ha fatto un passo per esprimere molto - il controllo del routing ecc. (Così espresso è solo lì per servire statico) - l'ho trovato scomodo ma sono io. – electblake

Problemi correlati