Heim  >  Artikel  >  Web-Frontend  >  Teilen Sie detaillierte Beispiele im Zusammenhang mit Angularjs

Teilen Sie detaillierte Beispiele im Zusammenhang mit Angularjs

零下一度
零下一度Original
2017-07-03 14:14:551105Durchsuche

Ich blieb dieses Wochenende zwei Tage lang zu Hause und teilte in meiner Freizeit weiterhin Inhalte zu Angularjs. Heute werde ich hauptsächlich die allgemeine Einführung in Angularjs und den Datenbindungsteil teilen Thema.

1. Grundkonzepte:
AngularJS wurde entwickelt, um die Mängel von HTML beim Erstellen von Anwendungen zu überwinden. HTML ist eine gute deklarative Sprache für die Gestaltung pseudostatischer Textanzeigen, ist jedoch schwach, wenn es um die Erstellung von WEB-Anwendungen geht. Also habe ich etwas daran gearbeitet (Sie können es sich auch als einen kleinen Trick vorstellen), damit der Browser das tut, was ich möchte. Normalerweise verwenden wir die folgenden Technologien, um die Mängel der statischen Webseitentechnologie beim Erstellen dynamischer Anwendungen zu beheben.
2. Version

 angualrjs1.x: Derzeit eine relativ stabile Version.
anglejs2.x: basierend auf Typoskript geschrieben, hat sich gegenüber 1.x stark verändert und ist auf die mobile Entwicklung ausgerichtet. Es ist in ES6-Standards geschrieben
anglejs4.x neueste Version

Die Die aktuelle Version ist 2.x. Es handelt sich nicht um ein Upgrade auf Basis von 1. Sie befürwortet die Komponentisierung, ähnlich wie Vue und React.

3. Kernfunktionen
MVC (oder MVVM) Designphilosophie:

Viele Leute werden daran denken Angularjs Es ist ein Front-End-MVC-Framework. Ich denke, es gibt einen Schatten von MVVM, da MVVM auf der Basis von MVC aktualisiert wird Datenbindungsfunktion, aber das ist nur meine persönliche Meinung. Bitte korrigieren Sie mich, Götter.

Zwei-Wege-Datenbindung:

Die bidirektionale Datenbindung wird von AngularJs nicht vorgeschlagen. Microsofts WPF verwendet MVVM-Ideen Front-End-Frameworks verwenden das Konzept der bidirektionalen Datenbindung.
Modularisierung und Abhängigkeitsinjektion

Modularisierung und Abhängigkeitsinjektion sind der Kerninhalt von AngularJs und das Highlight von Angular.
Befehlssystem

Das Befehlssystem ist auch der Kern von Angular. Das Befehlssystem ist in integrierte Befehle und benutzerdefinierte Befehle unterteilt sehr leistungsstark und kann viele leistungsstarke Funktionen erreichen. Funktionen und Details werden bei der Erläuterung der Anleitung ausführlich erläutert.

4. Fachgebiete

1) Single Page Application (SPA)
2) CRUD-Programm

Es ist möglich, dass einige Gärtner Einzelseitenanwendungen nicht sehr gut verstehen. Um ein einfaches Beispiel zu nennen: Unsere herkömmliche Mehrseitenanwendung MPA über das Iframe-Framework hat den Nachteil, dass sie mehrere Seiten mehrmals lädt Verwenden Sie HTML-Segmente, um den Modus zu laden oder zu wechseln. Ich werde hier nicht zu viel über MPA und SPA vorstellen. Sie können sie von Baidu verstehen.

AngularJs ist für CRUD-Anwendungssysteme geeignet, jedoch nicht für Anwendungen mit häufigen Seiteninteraktionen oder grafischen Seiten und Spielsysteme sind für dieses Framework nicht geeignet.

5. AngularJs-Anwendungszusammensetzung

Jede NG-Anwendung besteht aus Modultypen wie Controllern, Diensten, Anweisungen, Routen, Filtern usw . Zusammensetzung, lassen Sie mich ein Diagramm verwenden, um die Beziehung darzustellen:

6. Modul (Modul)
In Das AngularJS-Modul ist eine Kernexistenz, die viele Aspekte umfasst, wie z. B. Controller, Konfiguration, Service, Factory, Direktive, Konstante usw.
So erstellen Sie das Modul:
angle.module('myApp',[]);
So verwenden Sie das Modul:
Fügen Sie ng-app hinzuVorteile der Verwendung von Modulen:
1) Halten Sie den globalen Namespace sauber
2) Es ist einfacher, Testcode zu schreiben
3) Es ist einfach, Code zwischen verschiedenen Anwendungen wiederzuverwenden.
4) Verwenden Sie Deklarationen, um es den Menschen leichter verständlich zu machen.

7. Verwendung von AngularJs in der Anwendung

1) Wenn Sie Angular in der Anwendung verwenden, referenzieren Sie zunächst den js-Bibliothekscode des Angular Frameworks auf der Seite.

<head>
    <meta charset="UTF-8">
    <title>首页</title>
    <!--引用AngularJs库    -->
    <script type="text/javascript" src="/lib/angular-1.3.0.14/angular.js?1.1.11"></script>
  
</head>
2) Fügen Sie das ng-app-Modul zum HTML-Element hinzu, das den Angular-Bereich anwendet. Wenn Sie einen Controller hinzufügen müssen, fügen Sie ng-controller hinzu Das Körperelement kann sich auf jedem Element befinden. Dies gibt die Anwendungsgrenze mit Angular an.

<body ng-app="myapp" ng-controller="myCtrl">
    <!--    1、表达式绑定 -->
    <h1>{{expression}}</h1>
    <!-- 2、指令绑定-->
    <h2>{{ngmodel}}</h2>
    <input type="text" ng-model="ngmodel">
    <!--    3、ng-bind绑定-->
    <h3 ng-bind="ngbind"></h3>
    <h3 class="ng-bind:ngbind"></h3>
    <!--    4、ng-bind-html绑定-->
    <h4 ng-bind-html="htmlbind"></h4>
    <!--    5、ng-bind-template -->
    <h5 ng-bind-template="{{ngbind}},{{1+1}}"></h5>
</body>
 3. JS-Code hinzufügen und Module und Controller definieren

<script>
    //模块定义
    // 第一个参数:应用名称,第二个参数:应用依赖模块
    var app = angular.module(&#39;myapp&#39;, [&#39;ngSanitize&#39;]);

    //    控制器定义
    //    第一参数: 控制器名称, 第二个参数: 匿名函数, 传入作用域,并在作用域上添加额外功能
    app.controller(&#39;myCtrl&#39;, function($scope) {
        $scope.expression = "hello expression";
        $scope.ngbind = "hello ng-bind";
        $scope.htmlbind = "<font color=&#39;red&#39;>hello,htmlbind</font>";
        $scope.subCtrl = "hello subCtrl";

    });

</script>

Aus dem obigen Codeausschnitt können Sie sehen, wie die Modul- und Controller-Methoden definiert werden, und die Bedeutung jedes Parameters wird kommentiert.

Der Quellcode wird zu diesem Zeitpunkt mit allen auf GitHub geteilt und jeder kann ihn herunterladen.

Ich werde heute ebenso viele Inhalte mit Ihnen teilen. Ich werde mit Ihnen Datenbindungs- und Controller-bezogene Inhalte teilen. Vielen Dank für Ihre Unterstützung, und Sie können mich gerne korrigieren, wenn etwas nicht stimmt.

Das obige ist der detaillierte Inhalt vonTeilen Sie detaillierte Beispiele im Zusammenhang mit Angularjs. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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