AngularJS基础语法

1、ng-app

决定了angularjs的作用域范围,你可以如下使用:

<html ng-app> 
…  
</html>

来让angularjs渲染整个页面,也可以使用


<div ng-app='myapp'>
……
</div>

来渲染其中的一部分。

2、ng-model

ng-model,当你的数据模型被改变的时候,譬如ng-model='test',其中这个test的数值被改变的时候,{{test}}的数值也将跟随改变,也就是连接到ng-model中的test也跟随改变,如下

<!doctype html>
<html>
   <head>
       <script src="angular.min.js" type="text/javascript"></script>
       <title>learing argularjs--widuu</title>
   </head>
   <body ng-app>
   <input ng-model='test' >{{test}}
   </body>
</html>

3、angular.module

这个主要是做模块的注册,创建和索引,譬如我们ng-app想把这个注册成为一个服务就要用,当我们引用索引一个模块的时候也要使用

angular.module(name, [requires], [configFn]);
#name       类型string创建的检索模块的名称
#requires   简单理解就是你需要包含的使用模块,譬如ngRoute路由模块
#configFn   可以选配的功能模块,功能和module.config类似

4、controller

controller是angular.Module中的方法controller(name, constructor);其中name是controller的名字,constructor是控制器构造函数,我们利用一段代码来说明

<!doctype html>
<html>
   <head>
       <script src="angular.min.js" type="text/javascript"></script>
       <script type="text/javascript">
       var app = angular.module('myapp',[]);
       app.controller('mytest',function($scope){
           $scope.test="hello word";
       });
       </script>
       <title>learing argularjs--widuu</title>
   </head>
   <body ng-app='myapp' ng-controller='mytest' >
   <input ng-model='test'>{{test}}
   </body>
</html>

5、value

value也是angular.Module中的方法value(name, object);其中name是service的名称,object是服务器实例对象,这个时候我们就可以把上边的代码修改正成这样

<!doctype html>
<html>
   <head>
       <script src="angular.min.js" type="text/javascript"></script>
       <script type="text/javascript">
       var app = angular.module('myapp',[])
       .value('testvalue','word');
       app.controller('mytest',function($scope,testvalue){
           $scope.test="hello "+ testvalue;
       });
       </script>
       <title>learing argularjs--widuu</title>
   </head>
   <body ng-app='myapp' ng-controller='mytest' >
   <input ng-model='test'>{{test}}
   </body>
</html>

6、factory

factory也是angular.Module中的方法factory(name, providerFunction);;其中name是service的名称,providerFunction是函数用于创建新的服务器对象,这个时候我们就可以把上边的代码修改正成这样

复制代码 代码如下:

<!doctype html>
<html>
   <head>
       <script src="angular.min.js" type="text/javascript"></script>
       <script type="text/javascript">
       var app = angular.module('myapp',[])
           .value('testvalue','widuu')
           .factory('testfactory',function(testvalue){
               return{
                   lable:function(){
                       return "this can output : hello "+ testvalue;
                   }
               }
           });
       app.controller('mytest',function($scope,testvalue,testfactory){
           $scope.test = "hello "+ testvalue;
           $scope.output = testfactory.lable();
       });
       </script>
       <title>learing argularjs--widuu</title>
   </head>
   <body ng-app='myapp' ng-controller='mytest' >
   <input ng-model='test'>{{test}}
   </p>
       {{output}}
   </body>
</html>

7、provider

provider也是angular.Module中的方法provider(name, providerType);其中name是service的名称,providerFunction是函数用于创建新的服务器对象,这个跟factory差不多,我们现在用provider重写

复制代码 代码如下:

<!doctype html>
<html>
   <head>
       <script src="angular.min.js" type="text/javascript"></script>
       <script type="text/javascript">
       var app = angular.module('myapp',[])
           .value('testvalue','widuu')
           .provider('testprovider',
               function(){
                 this.lable = "this will output : hello widuu";
                 this.$get = function () {
                      return this;
                  }
               }
           );
       app.controller('mytest',function($scope,testvalue,testprovider){
           $scope.test = "hello "+ testvalue;
           $scope.output = testprovider.lable;
       });
       </script>
       <title>learing argularjs--widuu</title>
   </head>
   <body ng-app='myapp' ng-controller='mytest' >
   <input ng-model='test'>{{test}}
   </p>
       {{output}}
   </body>
</html>

8、service

service也是angular.Module中的方法service(name, constructor);其中name是service的名称,constructor一个将被实例化的构造函数,这个跟factory差不多,我们现在用service重写

复制代码 代码如下:

<!doctype html>
<html>
   <head>
       <script src="angular.min.js" type="text/javascript"></script>
       <script type="text/javascript">
       var app = angular.module('myapp',[])
           .value('testvalue','widuu')
           .service('testservice',
               function(testvalue){
                   this.lable = function(){
                       return "this will output:hello "+testvalue;
                   }
               }
           );
       app.controller('mytest',function($scope,testvalue,testservice){
           $scope.test = "hello "+ testvalue;
           $scope.output = testservice.lable();
       });
       </script>
       <title>learing argularjs--widuu</title>
   </head>
   <body ng-app='myapp' ng-controller='mytest' >
   <input ng-model='test'>{{test}}
   </p>
       {{output}}
   </body>
</html>

9、constant

constant也是angular.Module中的方法constant(name, object);其中name是常量的名称,而object是常量的值,我们可以这样写的

复制代码 代码如下:

<!doctype html>
<html>
   <head>
       <script src="angular.min.js" type="text/javascript"></script>
       <script type="text/javascript">
       var app = angular.module('myapp',[])
           .value('testvalue','widuu')
           .constant('count',23)
           .service('testservice',
               function(testvalue,count){
                   this.lable = function(){
                       return "this will output:hello "+testvalue+",age is "+count;
                   }
               }
           );
       app.controller('mytest',function($scope,testvalue,testservice){
           $scope.test = "hello "+ testvalue;
           $scope.output = testservice.lable();
       });
       </script>
       <title>learing argularjs--widuu</title>
   </head>
   <body ng-app='myapp' ng-controller='mytest' >
   <input ng-model='test'>{{test}}
   </p>
       {{output}}
   </body>
</html>


转载于:https://my.oschina.net/u/2312175/blog/646485

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值