zoukankan      html  css  js  c++  java
  • Angular.js 学习笔记

    AngularJS 通过新的属性和表达式扩展了 HTML。

    AngularJS 可以构建一个单一页面应用程序。

    <!--
            ng-app 指令定义一个 AngularJS 应用程序。
            ng-model 指令把元素值(比如输入域的值)绑定到应用程序。
            ng-bind 指令把应用程序数据绑定到 HTML 视图。
         -->
        <div ng-app="" ng-init="firstName='John'">
            <p>
                名字 :
                <input type="text" ng-model="name">
            </p>
            <h1>Hello <span ng-bind="name"></span></h1>
            <!--
                AngularJS 指令是以 ng 作为前缀的 HTML 属性。
                ng-init 指令初始化 AngularJS 应用程序变量。
             -->
            <p ng-bind="firstName"></p>
            <p>我的第一个表达式 5 + 5= {{ 5 + 5 }}</p>
        </div>
        <script src="../angular.js"></script>
    <!--
            ng-controller="myCtrl" 属性是一个 AngularJS 指令。用于定义一个控制器。
            AngularJS 使用$scope 对象来调用控制器。$scope 属于应用变量和函数
            $scope 用来保存AngularJS Model(模型)的对象。
            -->
        <div ng-app="myApp" ng-controller="myCtrl">
            名:
            <input type="text" ng-model="firstName"><br>
            姓:
            <input type="text" ng-model="lastName"><br>
            <br>
            姓名: {{ fullName() }}
        </div>
        <script src="../angular.js"></script>
        <script>
            var app = angular.module("myApp", []); //AngularJS 模块定义应用
            app.controller("myCtrl", function ($scope) { //AngularJS 控制器控制应用
                $scope.firstName = "John";
                $scope.lastName = "Doe";
                $scope.fullName = function () {
                    return $scope.firstName + " " + $scope.lastName;
                }
            })
        </script>
    <div ng-app="myApp">
            <!--
                ng-init 指令为 AngularJS 应用程序定义了 初始值。
                通常情况下,不使用 ng-init。您将使用一个控制器或模块来代替它。
                -->
            <h2 ng-init="quantity=1;price=5">价格计算器</h2>
    
            数量:
            <input type="number" ng-model="quantity">
            
            <!--ng-model 指令 绑定 HTML 元素 到应用程序数据。-->
            价格:
            <input type="number" ng-model="price">
    
            <p><b>总价:</b> {{ quantity * price }}</p>
    
            <p  ng-init="names=[
    {name:'Jani',country:'Norway'},
    {name:'Hege',country:'Sweden'},
    {name:'Kai',country:'Denmark'}]">循环对象:</p>
            <ul>
                <!--ng-repeat 指令对于集合中(数组中)的每个项会 克隆一次 HTML 元素。-->
                <li ng-repeat="x    in names">{{ x.name + ', ' + x.country }}
                </li>
            </ul>
    
            <p>自定义指令:</p>
            <!--
                .directive 函数来添加自定义的指令。
                要调用自定义指令,HTMl 元素上需要添加自定义指令名。
                使用驼峰法来命名一个指令, runoobDirective, 但在使用它时需要以 - 分割, runoob-directive:
    
                可以通过以下方式来调用指令:元素名,属性,类名,注释
                restrict 值可以是以下几种:
                E 只限元素名使用
                A 只限属性使用
                C 只限类名使用
                M 只限注释使用
                -->
            <runoob></runoob>
            <div class="runoob"></div>
            <runoob-directive></runoob-directive>
        </div>
        <script src="../angular.js"></script>
        <script>
            var app = angular.module("myApp", []);
            app.directive("runoob", function () {
                return {
                    restrict: "E",
                    template: "<h1>自定义指令!(runoob 非驼峰法)</h1>"
                };
            });
            app.directive("runoobDirective", function () {
                return {
                    template: "<h1>自定义指令!(runoobDirective 驼峰法)</h1>"
                };
            });
        </script>
    <div ng-app="myApp" ng-controller="myCtrl">
            名字:
            <input ng-model="name"><br />
            <form name="myForm">
                Email:
                <input type="email" name="myAddress" ng-model="text">
                <span ng-show="myForm.myAddress.$error.email">不是一个合法的邮箱地址</span>
            </form>
    
            <p>列表:</p>
            <ul>
                <li ng-repeat="item in items">{{ item }} {{ lastname }}</li>
            </ul>
        </div>
        <script src="../angular.js"></script>
        <script>
            var app = angular.module("myApp", []);
            app.controller("myCtrl", function ($scope, $rootScope) {
                $scope.name = "John Doe";
                $scope.items = ["Emil", "Tobias", "Linus"];
                /*
                    所有的应用都有一个 $rootScope,它可以作用在 ng-app 指令包含的所有 HTML 元素中。
                    $rootScope 可作用于整个应用中。是各个 controller 中 scope 的桥梁。
                    用 rootscope 定义的值,可以在各个 controller 中使用。
                    */
                $rootScope.lastname = "Refsnes";
            })
        </script>
  • 相关阅读:
    windows蓝屏错误小全
    大数据量下高并发同步的讲解(不看,保证你后悔)
    本地或者服务器同时启动2个或多个tomcat
    如何在同一系统里同时启动多个Tomcat
    Java配置----JDK开发环境搭建及环境变量配置
    Tomcat8内置jdk8运行环境发布web项目
    Tomcat 部署项目的三种方法
    Java Web(五) JSP详解(四大作用域九大内置对象等)
    Java 四大作用域总结
    JSP九大隐式对象
  • 原文地址:https://www.cnblogs.com/cyclone77/p/5364523.html
Copyright © 2011-2022 走看看