AngularJS控制器详解及示例代码


Posted in Javascript onAugust 16, 2016

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

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

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

<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学生的属性。

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 文件内容如下:

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

AngularJS控制器详解及示例代码

以上就是AngularJS控制器的资料整理,后续继续整理相关知识,谢谢大家对本站的支持。

Javascript 相关文章推荐
jquery mobile changepage的三种传参方法介绍
Sep 13 Javascript
通过JS动态创建一个html DOM元素并显示
Oct 15 Javascript
jQuery带箭头提示框tooltips插件集锦
Nov 17 Javascript
jQuery中:lt选择器用法实例
Dec 29 Javascript
Javascript设计模式理论与编程实战之简单工厂模式
Nov 03 Javascript
使用JS中的exec()方法构造正则表达式验证
Aug 01 Javascript
js实现文字截断功能
Sep 14 Javascript
深入理解Node中的buffer模块
Jun 03 Javascript
详解Angular2响应式表单
Jun 14 Javascript
解决vue中使用swiper插件问题及swiper在vue中的用法
Apr 04 Javascript
Vue框架下引入ActiveX控件的问题解决
Mar 25 Javascript
Vue实现boradcast和dispatch的示例
Nov 13 Javascript
AngularJS表达式讲解及示例代码
Aug 16 #Javascript
谈谈PHP中相对路径的问题与绝对路径的使用
Aug 16 #Javascript
jQuery多文件异步上传带进度条实例代码
Aug 16 #Javascript
AngularJS指令详解及示例代码
Aug 16 #Javascript
AngularJS教程之简单应用程序示例
Aug 16 #Javascript
AngularJS教程之MVC体系结构详解
Aug 16 #Javascript
超实用的javascript时间处理总结
Aug 16 #Javascript
You might like
php 智能404跳转代码,适合换域名没改变目录的网站
2010/06/04 PHP
php操作SVN版本服务器类代码
2011/11/27 PHP
ThinkPHP实现二级循环读取的方法
2014/11/03 PHP
PHP自带方法验证邮箱是否存在
2016/02/01 PHP
完美解决JS中汉字显示乱码问题(已解决)
2006/12/27 Javascript
js树形控件脚本代码
2008/07/24 Javascript
超级好用的jQuery圆角插件 Corner速成
2014/08/31 Javascript
jquery马赛克拼接翻转效果代码分享
2015/08/24 Javascript
基于jQuery实现动态搜索显示功能
2016/05/05 Javascript
jQuery使用Layer弹出层插件闪退问题
2016/12/22 Javascript
vue.js异步上传文件前后端实现代码
2017/08/22 Javascript
关于Vue.nextTick()的正确使用方法浅析
2017/08/25 Javascript
vue使用element-ui的el-input监听不了回车事件的解决方法
2018/01/12 Javascript
ng-events类似ionic中Events的angular全局事件
2018/09/05 Javascript
JavaScript实现数字前补“0”的五种方法示例
2019/01/03 Javascript
react中hook介绍以及使用教程
2020/12/11 Javascript
Python实现方便使用的级联进度信息实例
2015/05/05 Python
Python2.x中文乱码问题解决方法
2015/06/02 Python
解决python中使用PYQT时中文乱码问题
2019/06/17 Python
Django 模型类(models.py)的定义详解
2019/07/19 Python
python opencv实现信用卡的数字识别
2020/01/12 Python
在keras 中获取张量 tensor 的维度大小实例
2020/06/10 Python
利用CSS3制作简单的3d半透明立方体图片展示
2017/03/25 HTML / CSS
Html5移动端弹幕动画实现示例代码
2018/08/27 HTML / CSS
英国排名第一的宠物店:PetPlanet
2020/02/02 全球购物
Java里面有没有全局变量?为什么?
2015/02/06 面试题
vue 中 get / delete 传递数组参数方法
2021/03/23 Vue.js
测绘工程本科生求职信
2013/10/10 职场文书
《画》教学反思
2014/04/14 职场文书
授权委托书范文
2014/07/31 职场文书
小学生十佳少年事迹材料
2014/08/20 职场文书
我的中国梦主题班会
2015/08/14 职场文书
2016年师德学习心得体会
2016/01/12 职场文书
如何撰写促销方案?
2019/07/05 职场文书
MongoDB数据库的安装步骤
2021/06/18 MongoDB
PC版《死亡搁浅导剪版》现已发售 展开全新的探险
2022/04/03 其他游戏