美文网首页
AngularJS简介-基础

AngularJS简介-基础

作者: lMadman | 来源:发表于2016-08-03 16:51 被阅读0次

    AngularJS 是一个 JavaScript 框架。它可通过 <script> 标签添加到 HTML 页面。
    AngularJS 通过 [指令] 扩展了 HTML,且通过 [表达式] 绑定数据到 HTML。

    在1.3.0之后放弃了IE8
    引入了单向数据绑定
    删掉了一堆过时的API

    <b>四大核心特性:</b>

    MVC
    模块化
    指令系统
    双向数据绑定

    <b>MVC思想:</b>
    Model<->View<->Controller

    Model:数据模型层
    View:视图层,负责展示
    Controller:业务逻辑和控制逻辑
    好处:职责清晰,代码模块化
    问题:为什么23种设计模式里面没有MVC?


    <h5>AngularJS 扩展了 HTML</h5>
    AngularJS 通过 ng-directives 扩展了 HTML。
    ng-app 指令定义一个 AngularJS 应用程序。
    ng-model 指令把元素值(比如输入域的值)绑定到应用程序。
    ng-bind 指令把应用程序数据绑定到 HTML 视图。

    <!DOCTYPE html>
    <html>
    <head>
        <meta charset="utf-8">    
    </head>
    <body>
        <div ng-app="">    
            <p>名字 : <input type="text" ng-model="name"></p>    
            <h1>Hello {{name}}</h1>
        </div>
        <script src="angular.js"></script>
    </body>
    </html>
    

    讲解:
    当网页加载完毕,AngularJS 自动开启。
    ng-app 指令告诉 AngularJS,<div> 元素是 AngularJS 应用程序 的"所有者"。
    ng-model 指令把输入域的值绑定到应用程序变量 name
    ng-bind 指令把应用程序变量 name 绑定到某个段落的 innerHTML。

    如果您移除了 ng-app 指令,HTML 将直接把表达式显示出来,不会去计算表达式的结果。


    <b>什么是 AngularJS?</b>

    • AngularJS 使得开发现代的单一页面应用程序(SPAs:Single Page Applications)变得更加容易。
    • AngularJS 把应用程序数据绑定到 HTML 元素。
    • AngularJS 可以克隆和重复 HTML 元素。
    • AngularJS 可以隐藏和显示 HTML 元素。
    • AngularJS 可以在 HTML 元素"背后"添加代码。
    • AngularJS 支持输入验证。

    <b>AngularJS 指令</b>
    正如您所看到的,AngularJS 指令是以 ng 作为前缀的 HTML 属性。
    ng-init 指令初始化 AngularJS 应用程序变量。

        <div ng-app="" ng-init="firstName='John'">
            <p>姓名为 <span ng-bind="firstName"></span></p>
        </div>
    

    HTML5 允许扩展的(自制的)属性,以 data- 开头。AngularJS 属性以 ng- 开头,但是您可以使用 data-ng- 来让网页对 HTML5 有效。

        <div data-ng-app="" data-ng-init="firstName='John'">
            <p>姓名为 <span data-ng-bind="firstName"></span></p>
        </div>
    

    <b>AngularJS 表达式</b>
    AngularJS 表达式写在双大括号内:{{ expression }}
    AngularJS 表达式把数据绑定到 HTML,这与 ng-bind 指令有异曲同工之妙。
    AngularJS 将在表达式书写的位置"输出"数据。
    AngularJS 表达式 很像 JavaScript 表达式:它们可以包含文字、运算符和变量。
    实例 {{ 5 + 5 }} 或 {{ firstName + " " + lastName }}

    <!DOCTYPE html>
    <html>
    <head>
        <meta charset="utf-8">
    </head>
    <body>
        <div ng-app="">     
            <p>我的第一个表达式: {{ 5 + 5 }}</p>
        </div>
    </body>
    </html>
    //运行结果为:我的第一个表达式:10
    

    <b>AngularJS 应用</b>

    • AngularJS 模块(Module) 定义了 AngularJS 应用。
    • AngularJS 控制器(Controller) 用于控制 AngularJS 应用。
    • ng-app指令定义了应用, ng-controller 定义了控制器。
    <!DOCTYPE html>
    <html>
    <head>
        <meta charset="utf-8">
    </head>
    <body>
        <p>尝试修改以下表单。</p>
        <div ng-app="myApp" ng-controller="myCtrl">
            名: <input type="text" ng-model="firstName"><br>
            姓: <input type="text" ng-model="lastName"><br>
            <br>
            姓名: {{firstName + " " + lastName}}
        </div>
    <script>
    var app = angular.module('myApp', []);
    app.controller('myCtrl', function($scope) {
        $scope.firstName= "L";
        $scope.lastName= "Madman";
    });
    </script>
    

    <b>AngularJS 模块</b>

    var app = angular.module('myApp', []);```
    
    ><b>AngularJS 控制器</b>
    

    app.controller('myCtrl', function($scope) {
    $scope.firstName= "L";
    $scope.lastName= "Madman";
    });```

    相关文章

      网友评论

          本文标题:AngularJS简介-基础

          本文链接:https://www.haomeiwen.com/subject/uziqsttx.html