zoukankan      html  css  js  c++  java
  • Angular(2)

    1.自定义指令,直接栗子:

    note:定义指定是驼峰,2部分 前缀+作用,but  调用 改驼峰首字母大写处为 (-首字母小写)  

    <!DOCTYPE html>
    <html lang="en" ng-app="myApp">
    <head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script src="js/angular.js"></script>
    </head>
    <body ng-controller="ctl">
    <div say-hello test-name="Hello World"></div>
    <script>
    var app=angular.module('myApp',['ng'])
        //自定义指令
    app.directive('sayHello',function () {
    return {
    restrict:'EACM', /*可以作为 E element A attribute C class M comment*/
    replace:true, //作为conmment使用
    template:'<h2> Hello <Directive></Directive> {{testName}}</h2>',
    scope:{ //数据传入
    testName:'@ '
    }
    }
    });
    app.controller('ctl',function ($scope) {

    })
    </script>
    </body>
    </html>

    2.双向绑定

    双向绑定:模型数据绑定到视图  视图数据绑定到模型

    ngModel 表单组件中

    $scope.$watch(key,function)监听$scope值的改变

    <body ng-controller="ctl">
    <div class="container">
        <div class="sel">
            <select name="" id="" ng-model="selv">
                <option value="1">pic1
                </option>
                <option value="2">pic2
                </option>
            </select>
        </div>
        <div class="imgbox">
            <img alt="" ng-src="img/{{selv}}.png">
        </div>
        <div class="btn">
            <input type="checkbox" ng-model="btn">是否同意
            <button id="btn1" ng-disabled="!btn">注册</button>
        </div>
    </div>
    <script>
        var app = angular.module('myapp', ['ng']);
        app.controller('ctl', function ($scope) {
        });
    </script>

    3. 过滤器和函数

    作用:用在表达式中,实现对表达式结果的赛选,过滤,格式化

    语法:{{表达式| 过滤器名称}}中间管道符号分开 eg:<p>{{num|currency}}</p>

    limitTo:n  限制条数

    temp in list   foreach

    orderBy  angular.toJson(obj, [pretty]          点点点。。。

    <li ng-repeat="tmp in list| orderBy:'age':false|limitTo:2">
                {{tmp.age}} {{tmp.name}}
            </li>
                                                              image

    4.服务server 

    $rootScope 与 $scope  作用域对象

    $rootScope id$1 

    $Scope id$2 递增  公用数据保存在$rootScope里面 私有的保存在对应的 $scope里面

    例子:

    <!DOCTYPE html>
    <html lang="en" ng-app="myApp">
    <head>
        <meta charset="UTF-8">
        <title></title>
        <script src="js/angular.js"></script>
    </head>
    <body ng-controller="ctl">
    <table>
        <thead>
        <tr>
            <td>请选择</td>
            <td>姓名</td>
            <td>生日</td>
        </tr>
        </thead>
        <tbody>
        <tr ng-repeat="men in arr">
            <td><input type="checkbox" ng-model="men.status" ng-checked="selAll"></td>
            <td>{{men.name}}</td>
            <td>{{men.birthDay}}</td>
        </tr>
        <tr>
            <td><input type="checkbox" ng-model="selAll"></td>
            <td>全选</td>
            <td></td>
        </tr>
        </tbody>
    </table>
    <button ng-click="show()">查看</button>
    <script>
        var app = angular.module('myApp', ['ng']);
        app.controller('ctl', function ($scope) {
            $scope.arr = [{name: "king", birthDay: "1992.12.11", status: false}, {
                name: "fly",
                birthDay: "1944.12.11",
                status: false
            }, {name: "mary", birthDay: "1920.12.11", status: false}];
            $scope.show = function () {
                var str = "";
                angular.forEach($scope.arr, function (value, key) {
                    if (value.status) {
                        str += value.name + "被选中了
    ";
                    }
                });
                if (str == '') {
                    alert("都没选中");
                } else
                    alert(str);
            };
            $scope.$watch('selAll', function () {
                angular.forEach($scope.arr, function (value, key) {
                    $scope.arr[key].status = $scope.selAll
                })
            })
        })
    </script>
    </body>
    </html>
  • 相关阅读:
    linux项目部署学习(1) pyhton3的虚拟环境virtualenv和virtualenvwrapper详解
    linux下pip查看安装包的路径、和指定安装目录
    python+selenium实现长截图
    selenium设置chrome浏览器保持登录方式两种options和cookie
    linux中离线安装django
    理解 bashrc 和 profile
    Django部署阿里云服务时候报错:SQLite 3.8.3 or later is required (found 3.7.17)
    Django的django-admin工具详解
    Yum Install --Downloadonly 离线下载依赖包研究
    分治法求n个点中的最近距离
  • 原文地址:https://www.cnblogs.com/godbutton/p/6111167.html
Copyright © 2011-2022 走看看