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 相关文章推荐
用javascript动态调整iframe高度的代码
Apr 10 Javascript
JS类定义原型方法的两种实现的区别评论很多
Sep 12 Javascript
jQueryUI写一个调整分类的拖放效果实现代码
May 10 Javascript
2014最热门的JavaScript代码高亮插件推荐
Nov 25 Javascript
利用vue实现模态框组件
Dec 19 Javascript
Angular 4环境准备与Angular cli创建项目详解
May 27 Javascript
详解如何使用Node.js编写命令工具——以vue-cli为例
Jun 29 Javascript
vue2.X组件学习心得(新手必看篇)
Jul 05 Javascript
bootstrap自定义样式之bootstrap实现侧边导航栏功能
Sep 10 Javascript
JS匿名函数内部this指向问题详析
May 10 Javascript
浅谈Express.js解析Post数据类型的正确姿势
May 30 Javascript
解决微信小程序中的滚动穿透问题
Sep 16 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
德劲1107的电路分析与打磨
2021/03/02 无线电
php中smarty变量修饰用法实例分析
2015/06/11 PHP
如何使用jquery控制CSS样式,并且取消Css样式(如背景色,有实例)
2013/07/09 Javascript
jQuery的text()方法用法分析
2014/12/20 Javascript
jQuery中each()方法用法实例
2014/12/27 Javascript
基于JavaScript制作霓虹灯文字 代码 特效
2015/09/01 Javascript
jquery弹出遮掩层效果【附实例代码】
2016/04/28 Javascript
Bootstrap中点击按钮后变灰并显示加载中实例代码
2016/09/23 Javascript
jQuery实现在新增加的元素上添加事件方法案例分析
2017/02/09 Javascript
jQuery实现ajax无刷新分页页码控件
2017/02/28 Javascript
JSONP基础知识详解
2017/03/19 Javascript
mui开发中获取单选按钮、复选框的值(实例讲解)
2017/07/24 Javascript
微信小程序模板和模块化用法实例分析
2017/11/28 Javascript
[10:21]DOTA2-DPC中国联赛 正赛 PSG.LGD vs Aster 选手采访
2021/03/11 DOTA
python实现每次处理一个字符的三种方法
2014/10/09 Python
详解Python3.1版本带来的核心变化
2015/04/07 Python
Python线程同步的实现代码
2018/10/03 Python
Python3 导入上级目录中的模块实例
2019/02/16 Python
使用TensorFlow搭建一个全连接神经网络教程
2020/02/06 Python
python thrift 实现 单端口多服务的过程
2020/06/08 Python
python关于倒排列的知识点总结
2020/10/13 Python
删除pycharm鼠标右键快捷键打开项目的操作
2021/01/16 Python
咖啡为什么会有酸味?你喝到的咖啡為什麼是酸的?
2021/03/17 冲泡冲煮
css3 transform导致子元素固定定位变成绝对定位的方法
2020/03/06 HTML / CSS
解析浏览器的一些“滚动”行为鉴赏
2019/09/16 HTML / CSS
Ryderwear澳洲官网:澳大利亚高端健身训练装备品牌
2018/09/18 全球购物
什么是动态端口(Dynamic Ports)?动态端口的范围是多少?
2014/12/12 面试题
英语专业大学生求职简历的自我评价
2013/10/18 职场文书
自我评价范文点评
2013/12/04 职场文书
运动会宣传口号
2014/06/09 职场文书
2014财产信托协议书范本
2014/11/18 职场文书
担保书格式范文
2015/09/22 职场文书
《田忌赛马》教学反思
2016/02/19 职场文书
又涨知识了,自律到底多重要?
2019/06/27 职场文书
Python实现Excel文件的合并(以新冠疫情数据为例)
2022/03/20 Python
JavaScript实现两个数组的交集
2022/03/25 Javascript