举例讲解AngularJS中的模块


Posted in Javascript onJune 17, 2015

 AngularJS支持模块化的方法。模块用于单独的逻辑表示服务,控制器,应用程序等,并保持代码的整洁。我们在单独的js文件中定义的模块,并将其命名为按照module.js文件形式。在这个例子中,我们要创建两个模块。

  1.     Application Module - 用于初始化控制器应用程序
  2.     Controller Module - 用于定义控制器

应用模块

mainApp.js

var mainApp = angular.module("mainApp", []);

在这里,我们已经声明使用 angular.module 功能的应用程序 mainApp 模块。我们已经通过了一个空数组给它。此数组通常包含从属模块。
控制器模块

studentController.js

mainApp.controller("studentController", function($scope) {
  $scope.student = {
   firstName: "Mahesh",
   lastName: "Parashar",
   fees:500,
   subjects:[
     {name:'Physics',marks:70},
     {name:'Chemistry',marks:80},
     {name:'Math',marks:65},
     {name:'English',marks:75},
     {name:'Hindi',marks:67}
   ],
   fullName: function() {
     var studentObject;
     studentObject = $scope.student;
     return studentObject.firstName + " " + studentObject.lastName;
   }
  };
});

在这里,我们已经声明采用studentController模块的mainApp.controller功能的控制器。
使用模块

<div ng-app="mainApp" ng-controller="studentController">
..
<script src="mainApp.js"></script>
<script src="studentController.js"></script>

在这里,我们使用 ng-app 指令和控制器采用ng-controller指令应用模块。我们已经在主要的HTML页面导入mainApp.js和studentController.js。
示例

下面的例子将展示上述所有模块。

testAngularJS.htm

<html>
  <head>
 <title>Angular JS Modules</title>
 <style>
 table, th , td {
  border: 1px solid grey;
  border-collapse: collapse;
  padding: 5px;
 }
 table tr:nth-child(odd) {
  background-color: #f2f2f2;
 }
 table tr:nth-child(even) {
  background-color: #ffffff;
 }
 </style>
 </head>
 <body>
 <h2>AngularJS Sample Application</h2>
 <div ng-app="mainApp" ng-controller="studentController">
 <table border="0">
 <tr><td>Enter first name:</td><td><input type="text" ng-model="student.firstName"></td></tr>
 <tr><td>Enter last name: </td><td><input type="text" ng-model="student.lastName"></td></tr>
 <tr><td>Name: </td><td>{{student.fullName()}}</td></tr>
 <tr><td>Subject:</td><td>
 <table>
  <tr>
    <th>Name</th>
    <th>Marks</th>
  </tr>
  <tr ng-repeat="subject in student.subjects">
    <td>{{ subject.name }}</td>
    <td>{{ subject.marks }}</td>
  </tr>
 </table>
 </td></tr>
 </table>
 </div>
 <script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.2.15/angular.min.js"></script>
 <script src="mainApp.js"></script>
 <script src="studentController.js"></script>
</body>
</html>

mainApp.js

var mainApp = angular.module("mainApp", []);

studentController.js

mainApp.controller("studentController", function($scope) {
  $scope.student = {
   firstName: "Mahesh",
   lastName: "Parashar",
   fees:500,
   subjects:[
     {name:'Physics',marks:70},
     {name:'Chemistry',marks:80},
     {name:'Math',marks:65},
     {name:'English',marks:75},
     {name:'Hindi',marks:67}
   ],
   fullName: function() {
     var studentObject;
     studentObject = $scope.student;
     return studentObject.firstName + " " + studentObject.lastName;
   }
  };
});

输出

在Web浏览器打开textAngularJS.htm。看到结果如下。

举例讲解AngularJS中的模块

Javascript 相关文章推荐
javascript写的一个链表实现代码
Oct 25 Javascript
JavaScript 5 新增 Array 方法实现介绍
Feb 06 Javascript
javascript用户注册提示效果的简单实例
Aug 17 Javascript
在JavaScript的正则表达式中使用exec()方法
Jun 16 Javascript
jQuery支持添加事件的日历特效代码分享(3种样式)
Aug 24 Javascript
详解javascript中原始数据类型Null和Undefined
Dec 17 Javascript
jQuery 的 ready()的纯js替代方法
Nov 20 Javascript
微信小程序 radio单选框组件详解及实例代码
Jan 10 Javascript
微信小程序(三):网络请求
Jan 13 Javascript
基于Vue2.0+ElementUI实现表格翻页功能
Oct 23 Javascript
使用Node.js实现ORM的一种思路详解(图文)
Oct 24 Javascript
JS前端可视化canvas动画原理及其推导实现
Aug 05 Javascript
简介AngularJS的HTML DOM支持情况
Jun 17 #Javascript
在Ubuntu系统上安装Ghost博客平台的教程
Jun 17 #Javascript
JavaScript AOP编程实例
Jun 16 #Javascript
js+HTML5基于过滤器从摄像头中捕获视频的方法
Jun 16 #Javascript
动态加载jQuery的方法
Jun 16 #Javascript
详解AngularJS中的表格使用
Jun 16 #Javascript
js+HTML5实现视频截图的方法
Jun 16 #Javascript
You might like
关于我转生变成史莱姆这档事:第二季PV上线,萌王2021年回归
2020/05/06 日漫
PHP Squid中可缓存的动态网页设计
2008/09/17 PHP
php access 数据连接与读取保存编辑数据的实现代码
2010/05/12 PHP
PHP extract 将数组拆分成多个变量的函数
2010/06/30 PHP
PHP删除数组中的特定元素的代码
2012/06/28 PHP
php实现微信公众平台账号自定义菜单类
2015/10/11 PHP
PHP使用new StdClass()创建空对象的方法分析
2017/06/06 PHP
深入理解PHP+Mysql分布式事务与解决方案
2020/12/03 PHP
JavaScript this 深入理解
2009/07/30 Javascript
jquery阻止冒泡事件使用模拟事件
2013/09/06 Javascript
Jquery实现的一种常用高亮效果示例代码
2014/01/28 Javascript
WEB前端开发都应知道的jquery小技巧及jquery三个简写
2015/11/15 Javascript
如何解决hover在ie6中的兼容性问题
2016/12/15 Javascript
AngularJS中的拦截器实例详解
2017/04/07 Javascript
[43:03]完美世界DOTA2联赛PWL S2 PXG vs Magma 第二场 11.21
2020/11/24 DOTA
Python 匹配任意字符(包括换行符)的正则表达式写法
2009/10/29 Python
python获取本地计算机名字的方法
2015/04/29 Python
Python搭建APNS苹果推送通知推送服务的相关模块使用指南
2016/06/02 Python
python+requests+unittest API接口测试实例(详解)
2017/06/10 Python
利用aardio给python编写图形界面
2017/08/21 Python
学python安装的软件总结
2019/10/12 Python
python实现输入三角形边长自动作图求面积案例
2020/04/12 Python
pandas DataFrame运算的实现
2020/06/14 Python
实列教程 一款基于jquery和css3的响应式二级导航菜单
2014/11/13 HTML / CSS
HTML5 Canvas中绘制矩形实例
2015/01/01 HTML / CSS
浅谈react路由传参的几种方式
2021/03/23 Javascript
javascript实现用户必须勾选协议实例讲解
2021/03/24 Javascript
一封普通求职者的求职信
2013/11/20 职场文书
六年级数学教学反思
2014/02/03 职场文书
公司授权委托书范文
2014/08/02 职场文书
延安红色之旅心得体会
2014/10/07 职场文书
党的群众路线教育实践活动个人对照检查材料(教师)
2014/11/04 职场文书
自愿离婚协议书2015
2015/01/26 职场文书
茶花女读书笔记
2015/06/29 职场文书
使用 CSS 轻松实现一些高频出现的奇形怪状按钮
2021/12/06 HTML / CSS
Java8 CompletableFuture 异步回调
2022/04/28 Java/Android