简述AngularJS的控制器的使用


Posted in Javascript onJune 16, 2015

 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的控制器的使用

Javascript 相关文章推荐
如何使用Javascript正则表达式来格式化XML内容
Jul 04 Javascript
js实现幻灯片效果(基于jquery插件)
Nov 05 Javascript
js利用事件的阻止冒泡实现点击空白模态框的隐藏
Jan 24 Javascript
常用javascript表单验证汇总
Jul 20 Javascript
js实现的星星评分功能函数
Dec 09 Javascript
jquery  实现轮播图详解及实例代码
Oct 12 Javascript
jQuery实现模拟flash头像裁切上传功能示例
Dec 11 Javascript
js+div+css下拉导航菜单完整代码分享
Dec 28 Javascript
jquery实现焦点轮播效果
Feb 23 Javascript
JavaScript实现父子dom同时绑定两个点击事件,一个用捕获,一个用冒泡时执行顺序的方法
Mar 30 Javascript
Webpack中css-loader和less-loader的使用教程
Apr 27 Javascript
vue-cli开发环境实现跨域请求的方法
Apr 07 Javascript
详解AngularJS中的表达式使用
Jun 16 #Javascript
整理AngularJS中的一些常用指令
Jun 16 #Javascript
创建你的第一个AngularJS应用的方法
Jun 16 #Javascript
详解JavaScript中的表单验证
Jun 16 #Javascript
详解JavaScript中的异常处理方法
Jun 16 #Javascript
详解JavaScript对W3C DOM模版的支持情况
Jun 16 #Javascript
jQuery插件zepto.js简单实现tab切换
Jun 16 #Javascript
You might like
php MsSql server时遇到的中文编码问题
2009/06/11 PHP
linux系统上支持php的 iconv()函数的方法
2011/10/01 PHP
php学习笔记之面向对象编程
2012/12/29 PHP
使用php转义输出HTML到JavaScript
2015/03/27 PHP
PHP生成唯一订单号
2015/07/05 PHP
使用PHP如何实现高效安全的ftp服务器(二)
2015/12/30 PHP
CI框架(CodeIgniter)操作redis的方法详解
2018/01/25 PHP
PHP使用ajax的post方式下载excel文件简单示例
2019/08/06 PHP
javascript中的数字与字符串相加实例分析
2011/08/14 Javascript
关于jQuery object and DOM element
2013/04/15 Javascript
js 通过html()及text()方法获取并设置p标签的显示值
2014/05/14 Javascript
利用prop-types第三方库对组件的props中的变量进行类型检测
2017/05/02 Javascript
iview table render集成switch开关的实例
2018/03/14 Javascript
使用Typescript和ES模块发布Node模块的方法
2020/05/25 Javascript
el-table树形表格表单验证(列表生成序号)
2020/05/31 Javascript
原生JS实现微信通讯录
2020/06/18 Javascript
js+audio实现音乐播放器
2020/09/13 Javascript
python操作redis的方法
2015/07/07 Python
Python实现递归遍历文件夹并删除文件
2016/04/18 Python
基于Python的PIL库学习详解
2019/05/10 Python
Flask框架钩子函数功能与用法分析
2019/08/02 Python
Python中的X[:,0]、X[:,1]、X[:,:,0]、X[:,:,1]、X[:,m:n]和X[:,:,m:n]
2020/02/13 Python
django实现将修改好的新模型写入数据库
2020/03/31 Python
详解Django中的FBV和CBV对比分析
2021/03/01 Python
彻底弄明白CSS3的Media Queries(跨平台设计)
2010/07/27 HTML / CSS
美国最大的电子宠物训练产品制造商:PetSafe
2018/10/12 全球购物
感恩节活动方案
2014/01/27 职场文书
新闻传播专业求职信
2014/07/22 职场文书
授权委托书协议书
2014/10/16 职场文书
干部个人考察材料
2014/12/24 职场文书
骨干教师考核评语
2014/12/31 职场文书
2015年检验员工作总结范文
2015/04/30 职场文书
2016年圣诞节活动总结范文
2016/04/01 职场文书
MySQL表的增删改查(基础)
2021/04/05 MySQL
python 机器学习的标准化、归一化、正则化、离散化和白化
2021/04/16 Python
python实战之一步一步教你绘制小猪佩奇
2021/04/22 Python