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 相关文章推荐
通过js简单实现将一个文本内容转译成加密文本
Oct 22 Javascript
js弹出确认是否删除对话框
Mar 27 Javascript
使用jQuery简单实现模拟浏览器搜索功能
Dec 21 Javascript
jQuery中odd选择器的定义和用法
Dec 23 Javascript
jquery动态增加删减表格行特效
Nov 20 Javascript
js HTML5 Ajax实现文件上传进度条功能
Feb 13 Javascript
node模块机制与异步处理详解
Mar 13 Javascript
jQuery插件FusionCharts绘制的3D环饼图效果示例【附demo源码】
Apr 02 jQuery
Swiper实现轮播图效果
Jul 03 Javascript
ionic grid(栅格)九宫格制作详解
Jun 30 Javascript
详解vuex状态管理模式
Nov 01 Javascript
详解jQuery的核心函数和事件处理
Feb 18 jQuery
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+MYSQL的文章管理系统(一)
2006/10/09 PHP
解析php curl_setopt 函数的相关应用及介绍
2013/06/17 PHP
WordPress开发中自定义菜单的相关PHP函数使用简介
2016/01/05 PHP
PHP错误机制知识汇总
2016/03/24 PHP
PHP session 会话处理函数
2016/06/06 PHP
php mysql 封装类实例代码
2016/09/18 PHP
Kindeditor编辑器添加图片上传水印功能(php代码)
2017/08/03 PHP
laravel 5异常错误:FatalErrorException in Handler.php line 38的解决
2017/10/12 PHP
Laravel配置全局公共函数的方法步骤
2019/05/09 PHP
通过Mootools 1.2来操纵HTML DOM元素
2009/09/15 Javascript
js window.print实现打印特定控件或内容
2013/09/16 Javascript
浏览器页面区域大小的js获取方法
2013/09/21 Javascript
解决用jquery load加载页面到div时,不执行页面js的问题
2014/02/22 Javascript
javascript模拟命名空间
2015/04/17 Javascript
window.onload使用指南
2015/09/13 Javascript
AngularJS中$watch和$timeout的使用示例
2016/09/20 Javascript
js基础之DOM中元素对象的属性方法详解
2016/10/28 Javascript
js简单正则验证汉字英文及下划线的方法
2016/11/28 Javascript
ES6使用let命令更简单的实现块级作用域实例分析
2017/03/31 Javascript
angularjs封装$http为factory的方法
2017/05/18 Javascript
JavaScript实现全选取消效果
2017/12/14 Javascript
Python简单的制作图片验证码实例
2017/05/31 Python
Python调用微信公众平台接口操作示例
2017/07/08 Python
Python聊天室程序(基础版)
2018/04/01 Python
python使用PyQt5的简单方法
2019/02/27 Python
tensorflow实现打印ckpt模型保存下的变量名称及变量值
2020/01/04 Python
Pyinstaller加密打包应用的示例代码
2020/06/11 Python
解决pycharm 格式报错tabs和space不一致问题
2021/02/26 Python
canvas里面如何基于随机点绘制一个多边形的方法
2018/06/13 HTML / CSS
世界上最大的家庭自动化公司:Smarthome
2017/12/20 全球购物
2019年c语言经典面试题目
2016/08/17 面试题
心理学专业毕业生推荐信范文
2013/11/21 职场文书
《新型玻璃》教学反思
2014/04/13 职场文书
开会通知短信大全
2015/04/20 职场文书
高中军训感想
2015/08/07 职场文书
2016学校元旦晚会经典开场白台词
2015/12/03 职场文书