简述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 URL参数读取改进版
Jan 16 Javascript
动态为事件添加js代码示例
Feb 15 Javascript
一行代码告别document.getElementById
Jun 01 Javascript
javascript重复绑定事件造成的后果说明
Mar 02 Javascript
jQuery获取浏览器中的分辨率实现代码
Apr 23 Javascript
网页前端优化之滚动延时加载图片示例
Jul 13 Javascript
jQuery+ajax实现鼠标单击修改内容的方法
Jun 27 Javascript
理解AngularJs指令
Dec 10 Javascript
封装属于自己的JS组件
Jan 27 Javascript
如何理解jQuery中的ajaxSubmit方法
Mar 13 Javascript
关于js的三种使用方式(行内js、内部js、外部js)的程序代码
May 05 Javascript
微信小程序实现通过js操作wxml的wxss属性示例
Dec 06 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实现二分查找算法代码分享
2011/06/24 PHP
php中实现xml与mysql数据相互转换的方法
2014/12/25 PHP
PHP与服务器文件系统的简单交互
2016/10/21 PHP
在PHP中输出JS语句以及乱码问题的解决方案
2019/02/13 PHP
PHP hex2bin()函数用法讲解
2019/02/25 PHP
关于javascript 回调函数中变量作用域的讨论
2009/09/11 Javascript
JavaScript 构造函数 面相对象学习必备知识
2010/06/09 Javascript
jQuery的实现原理的模拟代码 -2 数据部分
2010/08/01 Javascript
基于jQuery的简单的列表导航菜单
2011/03/02 Javascript
Extjs Gird 支持中文拼音排序实现代码
2013/04/15 Javascript
纯js实现遮罩层效果原理分析
2014/05/27 Javascript
js选择并转移导航菜单示例代码
2014/08/19 Javascript
轻松创建nodejs服务器(7):阻塞操作的实现
2014/12/18 NodeJs
浅谈JavaScript的闭包函数
2016/12/08 Javascript
Nodejs中使用phantom将html转为pdf或图片格式的方法
2017/09/18 NodeJs
利用JavaScript的Map提升性能的方法详解
2019/08/14 Javascript
如何解决日期函数new Date()浏览器兼容性问题
2019/09/11 Javascript
基于javascript实现日历功能原理及代码实例
2020/05/07 Javascript
微信小程序开发(二):页面跳转并传参操作示例
2020/06/01 Javascript
使用Python获取Linux系统的各种信息
2014/07/10 Python
python检测远程服务器tcp端口的方法
2015/03/14 Python
python中将\\uxxxx转换为Unicode字符串的方法
2018/09/06 Python
Python基础之字符串常见操作经典实例详解
2020/02/26 Python
Python3使用xlrd、xlwt处理Excel方法数据
2020/02/28 Python
Python post请求实现代码实例
2020/02/28 Python
Python自动化操作实现图例绘制
2020/07/09 Python
Python中Selenium模块的使用详解
2020/10/09 Python
Python try except else使用详解
2021/01/12 Python
abstract 可以和 virtual 一起使用吗?可以和 override 一起使用吗?
2012/10/15 面试题
校园奶茶店创业计划书
2014/01/23 职场文书
公开服务承诺制度
2014/03/26 职场文书
单位工作证明范文
2014/09/14 职场文书
四查四看自我剖析材料
2014/09/19 职场文书
酒桌上的祝酒词
2015/08/12 职场文书
Spring中的使用@Async异步调用方法
2021/11/01 Java/Android
HTML中的表单元素介绍
2022/02/28 HTML / CSS