Durandal ähnelt Angular insofern, als es ein MV * -Framework für clientseitige SPA-Webanwendungen bietet.
Angular ist meist, wenn nicht alle, benutzerdefinierte Code, während Durandal nimmt vorhandene Bibliotheken, vor allem Knockout und RequireJS (Sammy Abhängigkeit wurde mit der 2.0-Version umgangen), und bietet die Installation, um vollständige SPA-Funktionalität, einschließlich Ansicht/Ansicht Modellzusammensetzung und Hash-Tag (Spa) -Navigation.
Wie für Knockout, verlässt sich Durandal stark auf Knockout, um die Ansichten zu bilden und Modelle anzusehen. Ihre Ansicht und das Ansichtsmodell sind automatisch datengebunden, wenn die Ansicht in das DOM eingefügt wird. Der Vorteil besteht darin, dass ich Knockout verwenden kann, um die V/VM-Datenbindung bereitzustellen, und Durandal die Arbeit machen muss, herauszufinden, welche v/vm verwendet wird, sie vom Server abzurufen und in den aktuellen Bildschirm zu schreiben.
In diesem Fall bietet Durandal eine Möglichkeit, Ansichten/Ansichtsmodelle auf Hash-Tag-basierte Routen abzubilden, die Ihnen die SPA-Navigation ermöglichen. Durch die Angabe einer shell
oder Layoutansicht als Hauptansicht kann ein Platzhalter hinzugefügt werden, den Durandal verwendet, um ein "Bildschirmpräsentator" -Muster zu implementieren. Durandal überwacht die URL-Änderungen und kann automatisch aktivieren, Daten binden (mithilfe von Knockout) und die Ansicht anzeigen, die der aktuellen URL-Route entspricht.
Wenn Sie mit WPF vertraut sind, können Sie Durandal als Prism-ähnliche Funktionalität als Hauptangebot betrachten, zusammen mit anderen Goodies, die das Erstellen von Single-Page-Anwendungen für das Web unterstützen.
Ich würde sagen, es ist viel näher an Caliburn.Micro als Prism ist. – cubski