AngularJS 0006:控制器

AngularJS 控制器主要控制程序数据交互,用ng-controller来实现。
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
    <script src="Scripts/angular.min.js"></script>
</head>
<body>
    <div ng-app="myProgram" ng-controller="myCtrl">

卡牌名称: <input type="text" ng-model="cardName"><br>
介绍: <textarea name="cardInfo"  ng-model="cardInfo"></textarea> <br>
<br>
{{cardName + ":" + cardInfo}}
</div>
<script>
    var app = angular.module('myProgram', []);
    app.controller('myCtrl', function ($scope) {
        $scope.cardName = "哥布林小屋";
        $scope.cardInfo = "能放出哥布林投矛手,千万别向里瞧,相信我";
    });
</script>
</body>
</html>
结果


由前面的只是我们来看这段代码,
ng-app 定义了一个AngularJS 应用程序,这个应用程序在 <div> 内运行。
ng-controller="myCtrl" 是一个 AngularJS 指令,定义了一个控制器。
在JS中myCtrl是一个函数,
函数中使用$scope对象来调用控制器,一般$scope 是一个应用对象(属于应用变量和函数)。
控制器的 $scope (相当于作用域、控制范围)用来保存AngularJS Model(模型)的对象。
控制器在作用域中创建了两个属性 (cardName 和 cardInfo)。
ng-model 指令绑定输入域到控制器的属性(cardName和 cardInfo。

控制器方法
上面是直接赋值,但是控制器也可以赋函数,
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
    <script src="Scripts/angular.min.js"></script>
</head>
<body>
    <!--控制器中的方法-->
    <div ng-app="myApp" ng-controller="personCtrl">
名: <input type="text" ng-model="firstName"><br>
姓: <input type="text" ng-model="lastName"><br>
<br>
姓名: {{fullName()}}


</div>


<script>
    var app = angular.module('myApp', []);
    app.controller('personCtrl', function ($scope) {
        $scope.firstName = "youshan";
        $scope.lastName = "yang";
        $scope.fullName = function () {
            return $scope.firstName + " " + $scope.lastName;
        }
    });
</script>
</body>
</html>
结果  

外部文件中的控制器
一般我们在实际项目中,会把控制器存储在外部文件中 ,比如,下面代码
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
    <script src="Scripts/angular.min.js"></script>
</head>
<body>
    <div ng-app="myApp" ng-controller="myname">
First Name: <input type="text" ng-model="firstName"><br>
Last Name: <input type="text" ng-model="lastName"><br>
<br>
Full Name: {{firstName + " " + lastName}}

</div>

<script src="mynameController.js"></script>

</body>
</html>
结果


结果是一致的, 

这段代码,把myname控制器放在了mynameController文件中,程序在执行时,会根据ng-controller="myname",该指令找到对应的控制器文件,可以理解为默认加上Controller后缀找到了那个JS文件。

工程下载:http://download.csdn.net/detail/yysyangyangyangshan/9713044


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值