Im Kontext der Winkeldokumentdiskussion kann der Begriff "Modell" auf ein einzelnes Objekt angewendet werden, das eine Entität darstellt (z. B. ein Modell namens "Telefone", dessen Wert ein Telefonarray ist) oder als volles Datenmodell der Anwendung (alle Entitäten).
In Angular kann das Modell alle Daten sein, und das Modell kann durch die Eigenschaften des Bereichs des Winkels erhalten werden. Der Name der Eigenschaft ist die Kennung des Modells, und der Wert kann jedes JavaScript -Objekt (einschließlich Arrays und Rohdaten) sein.
Die einzige Bedingung, dass JavaScript ein Modell wird, besteht darin, dass das Objekt als Attribut eines Bereichsobjekts durch einen Winkelbereich bezeichnet werden muss. Die Referenzbeziehung eines Attributs kann explizit oder implizit erstellt werden.
Wir können auf folgende Arten explizit Umfangseigenschaften erstellen und JavaScript -Objekte assoziieren, um ein Modell zu erstellen:
Im JavaScript -Code werden die dem SCOPE -Objekt zugewiesenen Attributen direkt zugewiesen. Dies wird normalerweise im Controller gesendet:
Funktion myctrl ($ scope) {// Eigenschaft 'foo' auf dem myctrl Scope // und zuweisen Sie ihm einen Anfangswert 'Bar' $ scope.foo = 'Bar'; }Verwenden Sie im Winkelausdruck der Vorlage (http://www.cnblogs.com/lclao/archive/2012/09/16/2687162.html) den Zuordnungsoperator:
<button ng-klick = "{{foos = 'ball'}}"> klicken Sie auf mich </button>
Verwenden Sie die Nginit -Direktive in Vorlagen (http://docs.angularjs.org/api/ng.directive:nginit) (nur in realen Anwendungen wird nicht empfohlen)
<body ng-init = "foo = 'bar'">
Angular erstellt implizit ein Modell in der folgenden Vorlagenstruktur:
Die Eingabe-, Auswahl-, TextArea- und andere Formularelemente des Formulars:
<Eingabe ng-model = "query" value = "Fluffy Cloud">
Der obige Code erstellt ein Modell namens "Abfrage" im aktuellen Bereich und ist an den Wert der Eingabe gebunden und wird in "Fluffy Cloud" initialisiert.
Iterator in NGrepeater deklarieren
<p ng-repeat = "Telefon in Telefonen"> </p>
Der obige Code erstellt für jedes Element jedes Telefone -Array einen untergeordneten Bereich und erstellt ein "Telefon" -Modell im entsprechenden untergeordneten Bereich, wodurch der entsprechende Wert im Array zugewiesen wird.
In Angular ist das JavaScript -Objekt bei der folgenden Situation kein Modell mehr:
Wenn kein Winkelbereich die mit dem Objekt zugeordneten Attribute enthält.
Alle Winkelbereiche, die mit Objekten verbundene Attribute enthalten, werden abgestanden und für die Müllsammlung geeignet.
Die folgende Abbildung zeigt die implizite Erstellung eines einfachen Datenmodells in einer einfachen Vorlage.
Das obige sind die Informationen über AngularJS, die die Modellkomponente verstehen, und wir werden sie später weiter hinzufügen. Vielen Dank für Ihre Unterstützung für diese Seite!