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 相关文章推荐
Google Map API更新实现用户自定义标注坐标
Jul 29 Javascript
jQuery如何获取同一个类标签的所有值(默认无法获取)
Sep 25 Javascript
js日期相关函数dateAdd,dateDiff,dateFormat等介绍
Sep 24 Javascript
Angularjs在360兼容模式下取数据缓存问题的解决办法
Jun 22 Javascript
jQuery实现标签子元素的添加和赋值方法
Feb 24 jQuery
layui点击导航栏刷新tab页的示例代码
Aug 14 Javascript
Vue2.0中三种常用传值方式(父传子、子传父、非父子组件传值)
Aug 16 Javascript
JavaScript事件对象深入详解
Dec 30 Javascript
jQuery-Citys省市区三级菜单联动插件使用详解
Jul 26 jQuery
Vue.js组件使用props传递数据的方法
Oct 19 Javascript
手把手教你如何编译打包video.js
Dec 09 Javascript
JS实现可以用键盘方向键控制的动画
Dec 11 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
php discuz 主题表和回帖表的设计
2009/03/13 PHP
PHP的PSR规范中文版
2013/09/28 PHP
php图片处理函数获取类型及扩展名实例
2014/11/19 PHP
php lcg_value与mt_rand生成0~1随机小数的效果对比分析
2017/04/05 PHP
弹出模态框modal的实现方法及实例
2017/09/19 PHP
php设计模式之工厂方法模式分析【星际争霸游戏案例】
2020/01/23 PHP
js宝典学习笔记(上)
2007/01/10 Javascript
JQuery 选择器 xpath 语法应用
2010/05/13 Javascript
JS连接SQL数据库与ACCESS数据库的方法实例
2013/11/21 Javascript
javascript基本包装类型介绍
2015/04/10 Javascript
node.js cookie-parser之parser.js
2016/06/06 Javascript
jQuery实现日期联动效果实例
2016/07/26 Javascript
利用JavaScript实现拖拽改变元素大小
2016/12/14 Javascript
利用JQuery操作iframe父页面、子页面的元素和方法汇总
2017/09/10 jQuery
在vue中使用vue-echarts-v3的实例代码
2018/09/13 Javascript
微信小程序webview 脚手架使用详解
2019/07/22 Javascript
[10:49]2014国际邀请赛 叨叨刀塔第二期为真正的电竞喝彩
2014/07/21 DOTA
[54:10]Spirit vs NB Supermajor小组赛 A组败者组决赛 BO3 第一场 6.2
2018/06/03 DOTA
Python3实现的腾讯微博自动发帖小工具
2013/11/11 Python
Python 中开发pattern的string模板(template) 实例详解
2017/04/01 Python
Python 创建空的list,以及append用法讲解
2018/05/04 Python
Python设计模式之命令模式原理与用法实例分析
2019/01/11 Python
Python面向对象之类的定义与继承用法示例
2019/01/14 Python
使用Python实现将list中的每一项的首字母大写
2019/06/11 Python
Python中py文件转换成exe可执行文件的方法
2019/06/14 Python
Python原始套接字编程实例解析
2020/01/29 Python
python 牛顿法实现逻辑回归(Logistic Regression)
2020/10/15 Python
有趣的睡衣和礼物:LazyOne
2019/11/27 全球购物
设置器与访问器的定义以及各自特点
2016/01/08 面试题
机电专业求职信
2014/06/14 职场文书
课程设计的心得体会
2014/09/03 职场文书
热情服务标语
2014/10/07 职场文书
个人作风建设心得体会
2014/10/22 职场文书
2014旅游局党组书记党建工作汇报材料
2014/11/02 职场文书
薪资证明范本
2015/06/19 职场文书
解决SpringBoot文件上传临时目录找不到的问题
2021/07/01 Java/Android