简述AngularJS的控制器的使用

   这篇文章主要介绍了AngularJS的控制器的使用,文中给出了具体的用于HTML中的对象示例,需要的朋友可以参考下

  AngularJS应用主要依赖于控制器来控制数据在应用程序中的流动。控制器采用ng-controller指令定义。控制器是一个包含属性/属性和JavaScript对象的功能。每个控制器接受$scope参数指定应用程序/模块,由控制器控制。

  ?

1
2
3

<div ng-app="" ng-controller="studentController">
...
</div>

  在这里,我们已经声明采用ng-controller指令的控制器studentController。作为下一步,我们将定义studentController如下

  ?

1
2
3
4
5
6
7
8
9
10
11
12
13

<script>
function studentController($scope) {
$scope.student = {
firstName: "yiibai",
lastName: "com",
fullName: function() {
var studentObject;
studentObject = $scope.student;
return studentObject.firstName + " " + studentObject.lastName;
}
};
}
</script>

  studentController 定义 $scope 作为JavaScript对象参数。

  $scope 表示应用程序,使用studentController对象。

  $scope.student 是studentController对象的属性。

  firstName和lastName是$scope.student 对象的两个属性。我们已经通过了默认值给他们。

  fullName 是$scope.student对象的函数,它的任务是返回合并的名称。

  在fullName函数中,我们现在要学生对象返回组合的名字。

  作为一个说明,还可以定义控制器对象在单独的JS文件,并把有关文件中的HTML页面。

  现在可以使用ng-model或使用表达式如下使用studentController学生的属性。

  ?

1
2
3
4

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()}}

  现在有 student.firstName 和 student.lastname 两个输入框。

  现在有 student.fullName()方法添加到HTML。

  现在,只要输入first name和lastname输入框中输入什么,可以看到两个名称自动更新。

  例子

  下面的例子将展示使用控制器。

  testAngularJS.html 文件内容如下:

  ?

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29

<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,看到以下结果:

时间: 2024-08-31 21:32:19

简述AngularJS的控制器的使用的相关文章

简述AngularJS相关的一些编程思想

  这篇文章主要介绍了AngularJS相关的一些编程思想,AngularJS是一款热门的JavaScript库,推荐!需要的朋友可以参考下 在过去的几个月里,我一直遨游于Angular的世界.如今回想起来,很难想象在没有类似于Angular.js, Backbone.js以及其伙伴Underscore.js这些数据绑定框架下我每天如何去编写一个大型前端应用.我不敢相信我已经用它们完成了那件工作. 可能我有点小偏见,但考虑到我一直在做的应用是在浏览器中实现Photoshop类型的编辑器,它呈现相

AngularJS控制器之间的通信方式详解_AngularJS

本文实例讲述了AngularJS控制器之间的通信方式.分享给大家供大家参考,具体如下: 一.利用作用域的继承方式 由于作用域的继承是基于js的原型继承方式,所以这里分为两种情况,当作用域上面的值为基本类型的时候,修改父作用域上面的值会影响到子作用域,反之,修改子作用域只会影响子作用域的值,不会影响父作用域上面的值:如果需要父作用域与子作用域共享一个值的话,就需要用到后面一种,即作用域上的值为对象,任何一方的修改都能影响另一方,这是因为在js中对象都是引用类型. 基本类型 function San

AngularJS控制器之间的数据共享及通信详解_AngularJS

AngularJS 本身已经提供了像指令 Directive 和 服务 Service 一类的方式,来实现数据和代码的共享和复用,但在实际的项目开发中,或许是处于懒惰,亦或是为了便利,总会想在两个控制器之间,直接进行数据的共享通信,或者是函数与方法的调用,这里我们就看看有哪些方法可以满足这个要求. 单例服务 单例服务是 AngularJS 本身支持的数据和代码共享方式,因为是单例的,所有的控制器访问的便是同一份数据.比如,下面的 Service 便可以实现: angular .module('a

AngularJS 控制器

在前面的博客中,我们能看到类似着这样的代码<div ng-controller="ctrl1">,这就是AngularJS的控制器指令. AngularJS 应用程序被控制器控制.ng-controller 指令定义了应用程序控制器.控制器是 JavaScript 对象,由标准的 JavaScript 对象的构造函数创建. <!DOCTYPE html> <html> <head> <meta charset="utf-8

AngularJS控制器controller正确的通信的方法_AngularJS

AngularJS是一款非常强大的前端MVC框架,AngularJS中的controller是个函数,用来向视图的作用域($scope)添加额外的功能,我们用它来给作用域对象设置初始状态,并添加自定义行为. 当我们在创建新的控制器时,angularJS会帮我们生成并传递一个新的$scope对象给这个controller,在angularJS应用的中的任何一个部分,都有父级作用域的存在,顶级就是ng-app所在的层级,它的父级作用域就是$rootScope. 每个$scope的$root指向$ro

AngularJS入门教程之控制器详解_AngularJS

AngularJS 控制器 AngularJS 控制器 控制 AngularJS 应用程序的数据.  AngularJS 控制器是常规的 JavaScript 对象. AngularJS 控制器 AngularJS 应用程序被控制器控制. ng-controller 指令定义了应用程序控制器. 控制器是 JavaScript 对象,由标准的 JavaScript 对象的构造函数 创建. AngularJS 实例 <!DOCTYPE html> <html> <head>

AngularJS指令与控制器之间的交互功能示例_AngularJS

本文实例讲述了AngularJS指令与控制器之间的交互功能.分享给大家供大家参考,具体如下: 本节我们来看控制器与指令之间的交互 1.首先来看最简单的,在指令中调用父控制器的方法: <div ng-controller="myController1"> </div> app.controller('myController1',['$scope',function($scope){ $scope.load=function(){ console.log('正在加

详解AngularJS控制器的使用_AngularJS

控制器在Angularjs中的作用是增强视图,它实际就是一个函数,用来向视图中的作用域添加额外的功能,我们用它来给作用域对象设置初始状态,并添加自定义行为. 当我们在页面上创建一个控制器时,Angularjs会生成并传递一个$scope给这个控制器,由于Angularjs会自动实例化控制器,所以我们只需要写构造函数即可.下面的例子展示了控制器初始化: function my Controller($scope){ $scope.msg="hello,world!"; } 上面这个创建控

AngularJS控制器继承自另一控制器_AngularJS

AngularJS里控制器继承,常用的就是作用域嵌套作用域.默认情况下,当前作用域中无法找到某个属性时,就会在父级作用域中进行查找,若找不到直至查找到$rootScope. 但有些情况下,rootScope下就是我们的controller,不可能将大量的公用属性方法写到rootScope里去. 比如说有多个类似的页面,都有面包屑,搜索栏,工具栏,表格等元素,面包屑表格这种元素考虑做成directive,那么必然会有许多类似的配置需要从controller传到组件里去,也会产生很多工具类方法用于处