簡述AngularJS的控制器的使用
AngularJS應(yīng)用主要依賴于控制器來控制數(shù)據(jù)在應(yīng)用程序中的流動??刂破鞑捎胣g-controller指令定義??刂破魇且粋€(gè)包含屬性/屬性和JavaScript對象的功能。每個(gè)控制器接受$scope參數(shù)指定應(yīng)用程序/模塊,由控制器控制。
<div ng-app="" ng-controller="studentController"> ... </div>
在這里,我們已經(jīng)聲明采用ng-controller指令的控制器studentController。作為下一步,我們將定義studentController如下
- studentController 定義 $scope 作為JavaScript對象參數(shù)。
- $scope 表示應(yīng)用程序,使用studentController對象。
- $scope.student 是studentController對象的屬性。
- firstName和lastName是$scope.student 對象的兩個(gè)屬性。我們已經(jīng)通過了默認(rèn)值給他們。
- fullName 是$scope.student對象的函數(shù),它的任務(wù)是返回合并的名稱。
- 在fullName函數(shù)中,我們現(xiàn)在要學(xué)生對象返回組合的名字。
- 作為一個(gè)說明,還可以定義控制器對象在單獨(dú)的JS文件,并把有關(guān)文件中的HTML頁面。
<script>
function studentController($scope) {
$scope.student = {
firstName: "yiibai",
lastName: "com",
fullName: function() {
var studentObject;
studentObject = $scope.student;
return studentObject.firstName + " " + studentObject.lastName;
}
};
}
</script>
現(xiàn)在可以使用ng-model或使用表達(dá)式如下使用studentController學(xué)生的屬性。
- 現(xiàn)在有 student.firstName 和 student.lastname 兩個(gè)輸入框。
- 現(xiàn)在有 student.fullName()方法添加到HTML。
- 現(xiàn)在,只要輸入first name和lastname輸入框中輸入什么,可以看到兩個(gè)名稱自動更新。
Enter first name: <input type="text" ng-model="student.firstName"><br>
Enter last name: <input type="text" ng-model="student.lastName"><br>
<br>
You are entering: {{student.fullName()}}
例子
下面的例子將展示使用控制器。
testAngularJS.html 文件內(nèi)容如下:
<html>
<head>
<title>Angular JS Controller</title>
</head>
<body>
<h2>AngularJS Sample Application</h2>
<div ng-app="" ng-controller="studentController">
Enter first name: <input type="text" ng-model="student.firstName"><br><br>
Enter last name: <input type="text" ng-model="student.lastName"><br>
<br>
You are entering: {{student.fullName()}}
</div>
<script>
function studentController($scope) {
$scope.student = {
firstName: "Mahesh",
lastName: "Parashar",
fullName: function() {
var studentObject;
studentObject = $scope.student;
return studentObject.firstName + " " + studentObject.lastName;
}
};
}
</script>
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.2.15/angular.min.js"></script>
</body>
</html>
輸出
在Web瀏覽器打開textAngularJS.html,看到以下結(jié)果:

相關(guān)文章
AngularJS 驗(yàn)證碼60秒倒計(jì)時(shí)功能的實(shí)現(xiàn)
最近在做AngularJS 項(xiàng)目,這是寫的一個(gè)60秒倒計(jì)時(shí)功能,下面小編給大家介紹AngularJS 驗(yàn)證碼60秒倒計(jì)時(shí)功能的實(shí)現(xiàn),需要的朋友參考下吧2017-06-06
AngularJS入門教程之路由機(jī)制ngRoute實(shí)例分析
這篇文章主要介紹了AngularJS入門教程之路由機(jī)制ngRoute,結(jié)合實(shí)例形式分析了AngularJS路由機(jī)制的原理、ngRoute的組成、配置、參數(shù)與相關(guān)使用技巧,需要的朋友可以參考下2016-12-12
AngularJS基礎(chǔ) ng-paste 指令簡單示例
本文主要介紹AngularJS ng-paste 指令,這里對ng-paste 指令的基礎(chǔ)資料做了整理,并附有代碼示例,有需要的朋友可以參考下2016-08-08
Angular跨字段驗(yàn)證器中如何直接調(diào)用其它獨(dú)立的驗(yàn)證器
我們在開發(fā)的時(shí)候都會用到表單,那么驗(yàn)證器就是必不可少的東西,這篇文章主要給大家介紹了關(guān)于在Angular跨字段驗(yàn)證器中如何直接調(diào)用其它獨(dú)立的驗(yàn)證器的相關(guān)資料,需要的朋友可以參考下2022-03-03
AngularJS基于MVC的復(fù)雜操作實(shí)例講解
下面小編就為大家分享一篇AngularJS基于MVC的復(fù)雜操作實(shí)例講解,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2017-12-12

