modell-vy-kontroller - Finns det ett JavaScript MVC (mikro-)ramverk?
Finns det några klientbaserade JavaScript MVC (mikro-)ramverk?
Jag har ett ganska komplicerat HTML-formulär, och det skulle gynnas av MVC-mönstret.
Jag föreställer mig att en bra lösning skulle ge följande:
- Modell och Vy uppdaterar Kontrollern när värden ändras (Observer-mönster)
- Fyll modellen med formulärdata när sidan laddas
- Fyll i formuläret från modellen när modellen ändras
Ajax, komet, JSONP och allt det där är allvarlig överdrift.
Svar #1
Backbone är ett fantastiskt lättviktigt ramverk. Prova det: http://backbonejs.org/
Svar #2
JavaScriptMVC är en utmärkt lösning. Dess allt-i-ett-plugin-ansats gör att du kan välja endast de funktioner du behöver. Från och med version 2.0 är det baserat på jQuery.
Att successivt förbättra din webbplats lämnas åt användaren eftersom JMVC endast tillhandahåller ett mellanlager för utveckling - det är upp till dig att själv göra det designvalet.
Dock är JavaScriptMVC helt enkelt det bästa allmänna JavaScriptMVC-biblioteket på grund av dess kraftfulla kontroller baserade på händelsedelegering.
Händelsedelegering låter dig slippa att fästa händelsehanterare, och istället helt enkelt skapa regler för din sida.
Slutligen är JMVC mycket mer än en MVC-arkitektur. Den täcker alla delar av utvecklingscykeln med:
- Kodgeneratorer
- Integrerad testning med Selenium och Env.js
- Dokumentationsmotor
- Automatisk Sammanfoga+Komprimera
- Felförebyggning och rapportering
Svar #3
Spine har ett API som liknar Backbone men det är mycket mindre. Det har prototypbaserad arv.
Svar #4
AngularJS fungerar bra tillsammans med jQuery och kommer att hjälpa dig mycket med MVC-struktur och strikt separering av ansvarsområden.
Fullständig testmiljö och beroendeinjektion inkluderad...
Kolla in det på http://angularjs.org
Svar #5
Verkligen finns det: http://www.javascriptmvc.com/
Jag tror att du kommer att tycka att detta är tillräckligt!
Svar #6
Jag tycker att den här ser ut som något du borde kolla in: http://knockoutjs.com/
(Som en Silverlight/WPF-programmerare var detta biblioteket som fick mig att äntligen börja lära mig JavaScript. Det är baserat på Model-View-View-Model (MVVM)-mönstret, vilket för mig just nu verkar vara ett bra val!)