Kombination von BootstrapTable mit KnockoutJS zur Implementierung von Hinzufügungs-, Lösch-, Änderungs- und Abfragefunktionen [1]_Javascript-Kenntnisse
PHP中文网
Freigeben: 2019-07-11 11:33:02
Original
3955 Leute haben es durchsucht
Bootstrap ist ein Front-End-Framework, das Webentwicklern viele Vorteile bietet. Die Benutzeroberfläche ist sehr hochwertig und edel. Theoretisch ist es nicht erforderlich, eine CSS-Zeile zu schreiben. Fügen Sie dem Tag einfach die entsprechenden Attribute hinzu.
KnockoutJS ist ein in JavaScript implementiertes MVVM-Framework. Sehr cool. Nachdem beispielsweise die Listendatenelemente hinzugefügt oder gelöscht wurden, ist es nicht erforderlich, das gesamte Kontrollfragment zu aktualisieren oder JS selbst zu schreiben, um Knoten hinzuzufügen oder zu löschen. Sie müssen lediglich die Vorlage und Attribute vordefinieren, die ihrer Syntax entsprechen Definition. Einfach ausgedrückt müssen wir uns nur auf den Datenzugriff konzentrieren.
1. Einführung in Knockout.js
1. Knockout.js und MVVM
Heutzutage muss ich bedauern, dass es als Programmierer wirklich schwierig ist, endlose Technologien zu erlernen. es sei denn, du verwandelst dich! Das Meer des Leidens ist grenzenlos, es liegt an Ihnen, zu entscheiden, ob Sie umkehren wollen oder nicht!
Knockout.js ist ein leichtes Front-End-Framework, das auf dem MVVM-Muster basiert. Wie leicht ist es? Laut der neuesten Version v3.4.0, die auf der offiziellen Website gezeigt wird, sind es nur 22 KB. Es kann die Bindung von Datenmodell und Schnittstellen-DOM auf benutzerfreundliche Weise handhaben. Das Wichtigste ist, dass die Bindung in beide Richtungen erfolgt, was bedeutet, dass sich auch die Daten im Schnittstellen-DOM entsprechend ändern Wenn sich wiederum die Daten in der Datenbank ändern, reagiert auch das Datenmodell auf diese Änderung. Dies kann die Menge unseres Front-End-Codes erheblich reduzieren und die Wartung unserer Schnittstelle vereinfachen. Wir müssen nicht mehr viele Ereignisüberwachungsdatenmodelle und Schnittstellen-DOM-Änderungen schreiben. Der folgende Blogger wird diese beiden Punkte anhand eines Anwendungsbeispiels veranschaulichen.
Offizielle Website von Knockout.js: http://knockoutjs.com
Open-Source-Adresse von Knockout.js: https://github.com/knockout/knockout
MVVM-Muster: Dies ist ein Entwurfsmuster zum Erstellen von Benutzeroberflächen. MVVM unterteilt es in drei Teile: Model, View und ViewModel ist das Datenmodell, View ist unsere Ansicht und ViewModel ist ein Ansichtsmodell, das für die Bindung verwendet wird. DOM-Elemente über dem Datenmodell und der Ansicht. Wenn Sie WPF und Silverlight verwendet haben, sollte es kein Problem sein, dies zu verstehen. Wenn Sie dies nicht getan haben, spielt es keine Rolle. Nachdem Sie diesen Artikel gelesen haben, werden Sie ein allgemeines Verständnis haben.
2. Das einfachste Beispiel
Wenn Sie Knockout.js von Grund auf verwenden, benötigen Sie Folgendes: mindestens die folgenden vier Schritte ausführen
2.1, Gehen Sie zur offiziellen Website, um die Datei knockout.js herunterzuladen, und zitieren Sie sie dann auf der Ansichtsseite.
Hinweis: knockout.js erfordert keine Unterstützung von jquery. Wenn Ihr Projekt jquery-bezogene Vorgänge verwenden muss, verweisen Sie andernfalls nur auf jquery oben Einfach ablegen.
2.2, Definition ViewModel
Was ist Viewmodel? Tatsächlich sieht es in js wie ein JSON-Objekt aus. Wir definieren ein Ansichtsmodell:
var myViewModel = {
Name: "Lilei",
profession: "软件工程师",
};
Nach dem Login kopieren
2.3, definieren Sie die Bezeichnung der Bindungsdatenbindung in der Ansichtsansicht
Hinweis: Der dem Eingabe-Tag entsprechende Text muss eine Texteingabe verwenden, während der Text des normalen Tags Text sein kann.
2.4. Bindung aktivieren
Nach Abschluss der oben genannten drei Schritte müssen Sie auch die Bindung von Knockout aktivieren
ko.applyBindings(myViewModel);
Nach dem Login kopieren
Durch diese vier Schritte wird grundsätzlich die einfachste Viewmodel-Datenbindung implementiert.
Wenn Sie vorsichtig genug sind, werden Sie feststellen, dass die Methode ko.applyBindings() zwei Parameter hat. Der erste ist das Ansichtsmodell, das wir binden müssen. Aus ko.applyBindings(myViewModel); können wir ersehen, dass der zweite Parameter ein optionaler Parameter ist, der den Umfang der an das Ansichtsmodell gebundenen Bezeichnung darstellt. Wir ändern beispielsweise den obigen Code:
Es ist ersichtlich, dass der zweite Parameter den Umfang von myViewModel einschränkt, das heißt, er wird nur wirksam, wenn er mit der ID = „lb_name“ an das Tag gebunden ist Der Parameter ist ein Div-Container-Tag. Er gibt an, dass der Gültigkeitsbereich der Bindung alle Untertags unter dem Div umfasst.
3. Überwachungseigenschaften
Bis zu den oben genannten vier Schritten können wir keine Wirkung erkennen, sondern nur Welchen Sinn hat es, die Daten eines JSON-Objekts an das HTML-Tag zu binden? Verkompliziert es nicht ein einfaches Problem? Machen Sie sich keine Sorgen, erleben Sie das Wunder jetzt! Wie oben erwähnt, ist die wichtigste Bedeutung des Knockouts die Zwei-Wege-Bindung. Wie erreichen wir also unsere Zwei-Wege-Bindung? Die Antwort ist die Überwachung von Eigenschaften.
In Knockout gibt es drei Kernüberwachungsattribute: Observables, DependentObservables und ObserveArray. Es scheint unangemessen, es Beobachtungsattribut oder Beobachtungsattribut zu nennen .
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn