angularJS初学篇-1添加随笔

1.头部引入angularJS文件

<script src="http://cdn.static.runoob.com/libs/angular.js/1.4.6/angular.min.js"></script>

2.angularjs指令

ng-app

  --指定了一个Angularjs的应用程序

  ng-app 指令定义了 AngularJS 应用程序的 根元素

    ng-app 指令在网页加载完毕时会自动引导(自动初始化)应用程序。

    稍后您将学习到 ng-app 如何通过一个值(比如 ng-app="myModule")连接到代码模块。

  ng-model

    --把输入域的值(元素值)绑定到应用程序。

ng-model 指令也可以:

    • 为应用程序数据提供类型验证(number、email、required)。
    • 为应用程序数据提供状态(invalid、dirty、touched、error)。
    • 为 HTML 元素提供 CSS 类。
    • 绑定 HTML 元素到 HTML 表单。

  ng-bind

    --把应用程序数据绑定到html视图。

  ng-init

     --初始化应用程序变量

    --通常情况下,不使用 ng-init。您将使用一个控制器或模块来代替它。

    --稍后您将学习更多有关控制器和模块的知识。

<div ng-app=""   ng-init="firstng=‘hang‘">          -----指定了一个Angularjs的应用程序

  <input type="text" ng-model="firstng"/>           --把输入域的值(元素值)绑定到应用程序。

  {{ firstng }}   ---获取绑定到应用程序的值

</div>

ng-repeat    --有点类似foreach功能

    

<div ng-app="" ng-init="names=[
  {name:‘Jani‘,country:‘Norway‘},
  {name:‘Hege‘,country:‘Sweden‘},
  {name:‘Kai‘,country:‘Denmark‘}]">

  <p>循环对象:</p>
  <ul>
    <li ng-repeat="x    in names">
      {{ x.name + ‘, ‘ + x.country }}
    </li>
  </ul>

</div>

3.angularjs表达式

  写在HTML body里面

  1.表达式写在双大括号内: {{ 表达式 }}

    例如:<div ng-app="" ag-init="obj">

    其中ag-init应用程序中的初始变量初始值可为json对象,数组,任意值。obj=[‘a‘,‘b‘,‘c‘]   ==> {{obj[0]}}     ,obj={a:‘a‘,c:‘c‘}   ==>{{obj.a}}

  2.{{表达式}} 如果为angular应用程序变量名,则功能与ng-bind一样,在html中显示变量值。

4.angularjs应用

  1.angularjs模块(module) 定义了angularjs应用。

  2.angularjs控制器(controller )用于控制angularjs应用

  ng-app指令定义了应用, ng-controller 定义了控制器。

  

 1 <!DOCTYPE html>
 2 <html>
 3 <head>
 4 <meta charset="utf-8">
 5 <script src="http://cdn.static.runoob.com/libs/angular.js/1.4.6/angular.min.js"></script>
 6 </head>
 7 <body>
 8
 9   <p>尝试修改以下表单。</p>
10
11   <div ng-app="myApp" ng-controller="myCtrl">
12
13   名: <input type="text" ng-model="firstName"><br>
14   姓: <input type="text" ng-model="lastName"><br>
15   <br>
16   姓名: {{firstName + " " + lastName}}
17
18   </div>
19
20   <script>
21   var app = angular.module(‘myApp‘, []);
22   app.controller(‘myCtrl‘, function($scope) {
23   $scope.firstName= "Joh333n";
24   $scope.lastName= "Doe";
25   });
26   </script>
27
28 </body>
29 </html>

5.创建自定义的指令

除了 AngularJS 内置的指令外,我们还可以创建自定义指令。

你可以使用 .directive 函数来添加自定义的指令。

要调用自定义指令,HTML 元素上需要添加自定义指令名。

使用驼峰法来命名一个指令, runoobDirective, 但在使用它时需要以 - 分割, runoob-directive:

  .可以通过元素名调用指令   //restrict:"E";   E=element;

<body ng-app="myApp">

    

<body>
    <div ng-app="myApp">
        <runoob-directive></runoob-directive>
        <script>
             var app=angular.module("myApp");
             app.directive("runoobDirective",function(){
      return {template:"<h1>this is auto defined code<h1>"}

    });
        </script>
    </div>
</body>

通过属性来调用//restrict:"A";   E=attribute;

<body ng-app="myApp">

<div runoob-directive></div>

<script>
var app = angular.module("myApp", []);
app.directive("runoobDirective", function() {
    return {
        template : "<h1>自定义指令!</h1>"
    };
});
</script>

</body>

通过类来调用

<body ng-app="myApp">

<div class="runoob-directive"></div>

<script>
var app = angular.module("myApp", []);
app.directive("runoobDirective", function() {
    return {
        restrict : "C",//C=class
        template : "<h1>自定义指令!</h1>"
    };
});
</script>

<p><strong>注意:</strong> 你必须设置 <b>restrict</b> 的值为 "C" 才能通过类名来调用指令。</p>

</body>

通过注释来调用

<body ng-app="myApp">

<!-- directive: runoob-directive -->

<script>
var app = angular.module("myApp", []);
app.directive("runoobDirective", function() {
    return {
        restrict : "M",//M=comment
        replace : true,
        template : "<h1>自定义指令!</h1>"
    };
});
</script>

<p><strong>注意:</strong> 我们需要在该实例添加 <strong>replace</strong> 属性, 否则评论是不可见的。</p>

<p><strong>注意:</strong> 你必须设置 <b>restrict</b> 的值为 "M" 才能通过注释来调用指令。</p>

</body>
时间: 2024-12-19 16:17:08

angularJS初学篇-1添加随笔的相关文章

java第四章编程题(初学篇)

代码: 1 /* 2 test.java 3 */ 4 package test; 5 public class test { 6 public static void main(String args[] ) 7 { 8 CPU ccp= new CPU(); 9 HardDisk hhd=new HardDisk(); 10 PC pc =new PC(); 11 ccp.setSpeed(2200); 12 hhd.setAmount(200); 13 pc.setCPU(ccp); 14

java学习之第五章编程题示例(初学篇)

1 /* 2 Animal.java 3 */ 4 package animal; 5 6 public abstract class Animal { 7 public abstract void cry(); 8 public abstract String getanimalName(); 9 } 1 //Dog.java 2 package animal; 3 4 public class Dog extends Animal 5 { 6 7 String aa="旺旺"; 8

地图篇-04.添加/删除大头针

地图篇-04.添加/删除大头针 博主这几天有点事,没有更新,还望海涵. 上一小节讲到展示地图,在展示地图的过程中,显示用户位置的时候是一个蓝色小圆点,但是朋友们觉得不好看,那弱弱的问一句,能换么? 肯定是能的啦. 1.准备 创建一个新项目,在storyboard中拖一个mapView,两个button,一个添加大头针,一个删除大头针,如下: 拖好了控件之后,简单搞下自动布局,然后把这3个控件拖入viewController.m中,不要忘记导入头文件和导入框架,这个前面讲过,这里不做细讲. 2.添

iOS开发项目篇—04添加导航栏的按钮

iOS开发项目篇—04添加导航栏的按钮 一.设置导航栏的按钮 要求实现的效果:             说明:默认状态下和高亮状态下的图片是不一样的. 按钮的图片需要设置默认状态和高亮状态时的显示,系统了提供的下面方法 viewController.navigationItem.leftBarButtonItem=[UIBarButtonItem alloc]initWithImage:<#(UIImage *)#> style:<#(UIBarButtonItemStyle)#>

iOS开发项目篇—02添加子控制器以及项目分层

iOS开发项目篇—02添加子控制器以及项目分层 一.添加子控制器 1.设置根控制器(自定义) 说明:分析新浪微博应用,观察其整体建构层次.而系统的控制器不能满足项目开发的需求,这里把项目中原有的控制器删除. 自己定义一个TabBarViewController类.让这个类作为window窗口的根控制器. YYAppDelegate.m文件代码: 1 #import "YYAppDelegate.h" 2 #import "YYTabBarViewController.h&qu

iOS开发项目篇—03添加导航控制器

iOS开发项目篇—03添加导航控制器 一.简单说明 分析:分析微博应用,我们需要给每个子控制器都添加一个导航控制器(每个子控制器的导航不一样),所以需要新建一个导航控制器,然后把该导航控制器作为window的根控制器,添加的四个子控制器,分别添加在导航控制器上,也就是说整个项目采用当前主流的UI框架,一个UITabBarController管理着四个UINavigationController,而每个UINavigationController则分别管理着“首页”.“消息”.“发现”和“我”这四

iOS开发项目篇—32添加上拉刷新数据

iOS开发项目篇—32添加上拉刷新数据 一.简单说明 图片示意 思路:可以自定义一个view(示意xib),在view中添加一个label和菊花,指示状态.把这个view设置为tableView的底部视图. 二.实现过程 1.新建一个类和xib,关联 (1)创建一个类,让其继承自UIView (2)创建一个xib文件,用来定义上拉提示框 (3)定义的xib文件,把类和xib文件进行关联 2.实现代码: YYlaodStatusesFooter.h文件 1 // 2 // YYlaodStatus

测试添加随笔标题

测试添加随笔内容 评论树 <script type="text/javascript"> $.ajax({ url: "/get_comment_tree/", type: "get", data: { article_id: {{ article_obj.pk }} }, success: function (comment_list) { console.log(comment_list); $.each(comment_list

我的第一篇博客随笔:关于angularjs API的理解心得。angular.bind() angular.boostrap()

angular.bind(obj,fun,args) obj:对象 fun:函数 arg:函数要传递的参数(可省略). 解释:将函数与对象动态绑定在一起 作用:实现调用数据模块化. demo:var Func = function(a){ this.a=a; } var obj=new Func(1); var fun=angular.bind(obj, function(i,j){alert(this.a+i+j)},4,2); fun();//7  var fun=angular.bind(