zoukankan      html  css  js  c++  java
  • Angular.js 的初步认识

    MVC模式

    模型(model)-视图(view)-控制器(controller)

    Angular.js采用了MVC设计模式的开源js框架

    1、如何在angular.js建立自己的模块(model),控制器(controller),操作模型数据。

      

    <head lang="en">
        <meta charset="UTF-8">
        <title></title>
        <script src="js/angular.js"></script>
        <!--这里我们需要引入一个angular.js -->
    </head>
    <!--④:在body中,声明执行myCtrl控制器-->
    <body ng-controller="myCtrl">
    
    <!--用双花括号括起来来引用,创建好的模型数据  -->
    <p>{{name}}</p>
    
    <script>
        //①:    模块的声明
       var app= angular.module("myApp",['ng']);
    
        //③: 控制器的声明
        app.controller('myCtrl',function($scope){
            console.log('in my contro function');
            //⑤:操作模型数据
            //$scope是建立模型数据和视图的桥梁
            $scope.name='web1608';    
        });
    </script>
    </body>
    </html>

    2、ng指令

      对于图像数据(ng-src)和(ng-click)的引用 

    <button ng-click="add()">+1</button>
    <img ng-src="img/{{imgUrl}}"/>
    <script>
        //模块的声明
        var app=angular.module('myApp',['ng']);
    
        //控制器的声明
        app.controller('myCtro',function($scope){
            $scope.num=10;
            $scope.imgUrl='1.jpg';
            $scope.add=function(){
                $scope.num++;
                console.log($scope.num);
            }
        })
    </script>

    需要使用img的src属性是同样 也要用ng指令中定义好的ng-src  来使用模型数据。否则浏览器显示后会提示有错误 .

      使用(ng-repeat)来遍历数据:

     1 <!DOCTYPE html>
     2 <html ng-app="myApp">
     3 <head lang="en">
     4     <meta charset="UTF-8">
     5     <title></title>
     6     <script src="js/angular.js"></script>
     7 </head>
     8 <body ng-controller="myCtro">
     9 <!--简易 添加 数据和 删除 数据  ng-repeat  -->
    10 <table>
    11     <thead>
    12     <tr>
    13         <th>单价</th>
    14         <th>数量</th>
    15         <th>小计</th>
    16         <th>删除</th>
    17     </tr>
    18     </thead>
    19     <tbody>
    20     <!--ng-repeat  遍历方式①  -->
    21     <tr ng-repeat="shop in cart track by $index">
    22     <!--shop in cart  是遍历数组对象cart 给shop(自己命名) 和 for in 类似 -->
    23     <!--track by $index  每个遍历过程的shop 都有一个下标 $index-->
    24         <td ng-repeat="(key,value) in shop">
    25         <!-- ng-repeat 遍历方式② -->
    26         <!--  遍历shop 关联数组 方式 : 键对值-->
    27             {{value}}
    28         </td>
    29         <td>
    30             <button ng-click="delete($index)">删除</button>
    31         </td>
    32     </tr>
    33     </tbody>
    34 </table>
    35 <button ng-click="add()">添加</button>
    36 <script>
    37     var app=angular.module('myApp',['ng']);
    38     
    39     app.controller('myCtro',function($scope){
    40         $scope.cart=[
    41             {cname:'冰箱',price:1000,num:1},
    42             {cname:'烤箱',price:300,num:1},
    43             {cname:'保鲜箱',price:200,num:1},
    44         ];
    45         
    46         $scope.delete=function($index){
    47             //对cart进行删除操作
    48             $scope.cart.splice($index,1);
    49             
    50         }
    51 
    52         $scope.add=function(){
    53             //直接入栈 添加新数据
    54             $scope.cart.push({cname:'保鲜箱',price:200,num:1});
    55         }
    56     })
    57 </script>
    58 </body>
    59 </html>

      显示结果:

  • 相关阅读:
    第一周2016/9/16
    团队项目计划会议
    电梯演讲视频
    团队项目成员与题目(本地地铁查询app)
    地铁查询相关问题汇总
    延长zencart1.5.x后台的15分钟登录时间和取消90天强制更换密码
    zencart1.5.x版管理员密码90天到期后台进入不了的解决办法
    通过SSH解压缩.tar.gz、.gz、.zip文件的方法
    html标签被div嵌套页面字体变大的解决办法
    zencart批量插入TEXT文本属性attributes
  • 原文地址:https://www.cnblogs.com/samdx/p/6116586.html
Copyright © 2011-2022 走看看