Frage

Ich bin mit dem relativ unreif Joose Javascript ORM-Plugin ( Projekt ) Objekte in einem Appcelerator Titanium bestehen bleiben ( Unternehmensseite ) Mobil Projekt. Da es der Client-Seite Lagerung, muss die Anwendung überprüfen, um zu sehen, ob die Datenbank die ORM vor der Inbetriebnahme initialisiert wird, da es die DB-Tabellen überprüft die Klassen zu konstruieren.

Mein Problem ist, dass diese Folge von Operationen (und wenn diese so ist, andere Dinge auf der Straße) in Anspruch nimmt viele Rückrufe nehmen. Ich habe eine Menge Springen in dem Code um, das nicht offensichtlich zu einem Betreuer und die Ergebnisse in einigen komplexen Anruf Grafiken und so weiter ist. Also, bitte ich diese Fragen:

  1. Wie würden Sie asynchron eine Datenbank initialisieren und füllen Sie es mit Seed-Daten mit Hilfe eines ORM, die das Schema muss korrekt Funktion sein?
  2. Haben Sie allgemeine Strategien oder Links für async / ereignisgesteuerte Programmierung und halten die Aufrufgraphen einfach und verständlich?
  3. Haben Sie Vorschläge für Javascript ORMs / Metaobjektes Systeme, dass die Arbeit mit HTML 5 als Speicher-Engine und sind hoffentlich Rahmen Agnostiker?
  4. Bin ich nur ein großes newb und sollte in der Lage mit Leichtigkeit diese heraus zu arbeiten?

Danke Leute!

War es hilfreich?

Lösung

Versuchen flow.js (https://github.com/willconant/flow-js).

Andere Tipps

Hier finden Sie aktuelle NarrativeJS :

  

ist Narrative JavaScript ein kleines   Erweiterung der JavaScript-Sprache   das ermöglicht Blockierung Fähigkeiten für   asynchrones Ereignis Rückrufe. Diese   macht erfrischend asynchronen Code   lesbar und verständlich ist.

     

Mit Narrative JavaScript ein Dokument mit XmlHttp holen geht aus der Betrachtung wie folgt aus:

function handleResponse(responseText) {
    document.getElementById("myElem").innerHTML = responseText;
}
fetch("http://www.url.com/", handleResponse);
  

folgt aus:

document.getElementById("myElem").innerHTML = fetch->("http://www.url.com/");

Schade, dass das Projekt nicht mehr aktiv ist: - (

dojo.Deferred () scheint auch ein asynchrones Monade zu implementieren, obwohl die Syntax nicht so klar wie NarrativeJS ist.

Es hat einige Arbeiten an Erhebung gewesen Asynchron-Zucker Coffeescript, aber letztlich es wurde nicht akzeptiert .

RxJS ist eine andere, die sich mit dieser.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top