AngularJS模块详解及示例代码


Posted in Javascript onAugust 17, 2016

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

Application Module - 用于初始化控制器应用程序

Controller Module - 用于定义控制器

应用模块

mainApp.js

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

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

控制器模块

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模块详解及示例代码

以上就是AngularJS模块相关知识的资料整理,后续继续补充相关知识,谢谢大家对本站的支持!

Javascript 相关文章推荐
JQuery 常用方法基础教程
Feb 06 Javascript
JavaScript 判断浏览器类型及版本
Feb 21 Javascript
js 刷新页面的代码小结 推荐
Apr 02 Javascript
js实现addClass,removeClass,hasClass的函数代码
Jul 13 Javascript
简单实现异步编程promise模式
Jul 31 Javascript
详解js的异步编程技术的方法
Feb 09 Javascript
Angular.js中定时器循环的3种方法总结
Apr 27 Javascript
Vue开发之封装分页组件与使用示例
Apr 25 Javascript
新手入门带你学习JavaScript引擎运行原理
Jun 24 Javascript
vue.js实现左边导航切换右边内容
Oct 21 Javascript
Echarts实现多条折线可拖拽效果
Dec 19 Javascript
JavaScript 数组去重详解
Sep 15 Javascript
Bootstrap 源代码分析(未完待续)
Aug 17 #Javascript
AngularJS HTML DOM详解及示例代码
Aug 17 #Javascript
AngularJS表格详解及示例代码
Aug 17 #Javascript
AngularJS过滤器详解及示例代码
Aug 16 #Javascript
AngularJS控制器详解及示例代码
Aug 16 #Javascript
AngularJS表达式讲解及示例代码
Aug 16 #Javascript
谈谈PHP中相对路径的问题与绝对路径的使用
Aug 16 #Javascript
You might like
Windows中安装Apache2和PHP4权威指南
2006/11/18 PHP
一个简单的php实现的MySQL数据浏览器
2007/03/11 PHP
解密ThinkPHP3.1.2版本之模块和操作映射
2014/06/19 PHP
php+ajax实现无刷新分页的方法
2014/11/04 PHP
php技巧小结【推荐】
2017/01/19 PHP
实例讲解YII2中多表关联的使用方法
2017/07/21 PHP
Javascript 复制数组实现代码
2009/11/26 Javascript
Tab页界面 用jQuery及Ajax技术实现(php后台)
2011/10/12 Javascript
JS页面延迟执行一些方法(整理)
2013/11/11 Javascript
javascript自动给文本url地址增加链接的方法分享
2014/01/20 Javascript
javascript与有限状态机详解
2014/05/08 Javascript
jQuery操作元素css样式的三种方法
2014/06/04 Javascript
JavaScript中原型链存在的问题解析
2016/09/25 Javascript
利用vue开发一个所谓的数独方法实例
2017/12/21 Javascript
Vue.js数字输入框组件使用方法详解
2019/10/19 Javascript
Python的MongoDB模块PyMongo操作方法集锦
2016/01/05 Python
Python随手笔记第一篇(2)之初识列表和元组
2016/01/23 Python
在pytorch中对非叶节点的变量计算梯度实例
2020/01/10 Python
python绘制玫瑰的实现代码
2020/03/02 Python
Python实现从N个数中找到最大的K个数
2020/04/02 Python
Python如何脚本过滤文件中的注释
2020/05/27 Python
Spring http服务远程调用实现过程解析
2020/06/11 Python
聊聊python在linux下与windows下导入模块的区别说明
2021/03/03 Python
CSS3 特效范例整理
2011/08/22 HTML / CSS
canvas生成带二维码海报的踩坑记录
2019/09/11 HTML / CSS
客服实习的个人自我鉴定
2013/10/20 职场文书
汽车运用工程系毕业生自荐信
2013/12/27 职场文书
个人现实表现材料
2014/02/04 职场文书
新闻学专业大学生职业生涯规划范文
2014/03/02 职场文书
创建精神文明单位实施方案
2014/03/08 职场文书
小学教师寄语大全
2014/04/03 职场文书
人事经理岗位职责
2014/04/28 职场文书
2014年卫生保健工作总结
2014/12/08 职场文书
小学少先队活动总结
2015/05/08 职场文书
java设计模式--建造者模式详解
2021/07/21 Java/Android
Pygame Draw绘图函数的具体使用
2021/11/17 Python