2013-04-09 14 views
19

Ich versuche, eine Bibliothek für clientseitige MVC in ClojureScript auszuwählen. Hier sind die ClojureScript Bibliotheken, die ich gefunden habe, so weit:Clientseitige MVC-Frameworks für ClojureScript

  1. WebFUI (https://github.com/drcode/webfui)
  2. Enfocus: (http://ckirkendall.github.io/enfocus-site/)
  3. Pedestal (http://pedestal.io)
  4. ducttape (https://github.com/hozumi/ducttape.cljs)
  5. C2 (http://keminglabs.com/c2/) Es scheint, dass dies als DOM-Framework verwendet werden kann.

Wie sollte ich zwischen ihnen wählen? Wie werden sie mit der Verwendung von AngularJS oder Backbone von ClojureScript verglichen?

+0

So sind Sie in den Kommentaren nicht interessiert, warum Winkel kann besser sein als clojure Gegenstücke? ;-) –

+1

hah. Ich bin auch dafür offen! Ich habe gerade an einigen Stellen gelesen, dass die Verwendung von Backbone/Angular mit Clojurescript nicht bevorzugt werden sollte. Aber ich habe schon früher mit angular in JS gearbeitet und genieße es, möchte aber jetzt den "clojure way" machen. – Jonovono

+0

Jetzt gibt es auch Clojure auf Spulen bei coins.cc – Zubair

Antwort

3

Ganelon (von dem ich Autor bin) ist ein Clojure Web Microframework auf Ring/Compojure.

Es ist nicht genau clientseitige MVC, wie es im Allgemeinen einen einfachen Mechanismus bereitstellt, die es uns erlaubt zu:

  1. invoke XHR Anfrage von einer dünnen JavaScript-Ebene (zB auf dem Link klicken oder Formular abschicken)
  2. return JSON Reaktionsoperationen enthält, durchgeführt werden (zB Update DIV, Anzeige modal, etc.)
  3. führen Operationen aus Schritt 2 durch eine dünne Schicht JavaScript

Docs & Demo sind hier verfügbar: http://ganelon.tomeklipski.com.

+0

Vielen Dank! Eigentlich wollte ich deine einschließen. Ich habe es vor einer Weile überprüft und es scheint interessant. – Jonovono

6

Dies ist nicht gerade ein komplettes Framework, vielleicht nur das V der Client-Seite MVC, aber es lohnt sich, ein Auge darauf zu haben.

https://github.com/swannodette/om

A ClojureScript Schnittstelle zu Facebook React

Om ermöglicht es Benutzern, ihre UIs einfach als EDN darzustellen. Da es sich bei ClojureScript-Daten um unveränderliche Daten handelt, kann Om die Benutzeroberfläche immer schnell aus dem Stamm rendern. Daher sind Om-UIs out-of-the-box-snapshotfähig und rückgängig zu machen, und diese Operationen haben keine Implementierungskomplexität und wenig Overhead. Bitte

verpassen Sie nicht diese http://swannodette.github.io/2013/12/31/time-travel/ lesen