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实现检测浏览器及版本的脚本代码
Jan 22 Javascript
javascript游戏开发之《三国志曹操传》零部件开发(一)让静态人物动起来
Jan 23 Javascript
使用JavaScript动态设置样式实现代码及演示动画
Jan 25 Javascript
jquery动态添加删除div 具体实现
Jul 20 Javascript
iframe里面的元素触发父窗口元素事件的jquery代码
Oct 19 Javascript
学习javascript面向对象 理解javascript对象
Jan 04 Javascript
js console.log打印对像与数组用法详解
Jan 21 Javascript
微信小程序getPhoneNumber获取用户手机号
Sep 29 Javascript
微信小程序 如何保持登录状态
Aug 16 Javascript
layui添加动态菜单与选项卡 AJAX请求的例子
Sep 25 Javascript
vue-router结合vuex实现用户权限控制功能
Nov 14 Javascript
解决vue init webpack 下载依赖卡住不动的问题
Nov 09 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
《被神捡到的男人》动画化计划进行中!
2020/03/06 日漫
杏林同学录(一)
2006/10/09 PHP
php实现自动获取生成文章主题关键词功能的深入分析
2013/06/03 PHP
使用PHP获取当前url路径的函数以及服务器变量
2013/06/29 PHP
php的sprintf函数的用法 控制浮点数格式
2014/02/14 PHP
给大家分享几个常用的PHP函数
2017/01/15 PHP
php7 安装yar 生成docker镜像
2017/05/09 PHP
关于Yii2框架跑脚本时内存泄漏问题的分析与解决
2019/12/01 PHP
js 页面输出值
2008/11/30 Javascript
学习ExtJS Window常用方法
2009/10/07 Javascript
用js实现的自定义的对话框的实现代码
2010/03/21 Javascript
js一般方法改写成面向对象方法的无限级折叠菜单示例代码
2013/07/04 Javascript
javascript显式类型转换实例分析
2015/04/25 Javascript
jquery使整个div区域可以点击的方法
2015/06/24 Javascript
js实现页面跳转的五种方法推荐
2016/03/10 Javascript
jQuery中的select操作详解
2016/11/29 Javascript
bootstrap警告框示例代码分享
2017/05/17 Javascript
javascript面向对象三大特征之多态实例详解
2019/07/24 Javascript
python类定义的讲解
2013/11/01 Python
结合Python的SimpleHTTPServer源码来解析socket通信
2016/06/27 Python
Python 通过pip安装Django详细介绍
2017/04/28 Python
Python中Threading用法详解
2017/12/27 Python
Python采集代理ip并判断是否可用和定时更新的方法
2018/05/07 Python
python实现写数字文件名的递增保存文件方法
2018/10/25 Python
python实现停车管理系统
2018/11/30 Python
在Pycharm中设置默认自动换行的方法
2019/01/16 Python
Python分布式进程中你会遇到的问题解析
2019/05/28 Python
Django应用程序入口WSGIHandler源码解析
2019/08/05 Python
Python的bit_length函数来二进制的位数方法
2019/08/27 Python
Python使用tkinter实现摇骰子小游戏功能的代码
2020/07/02 Python
pytorch Dataset,DataLoader产生自定义的训练数据案例
2021/03/03 Python
办公文员的工作岗位职责
2013/11/12 职场文书
物联网工程专业推荐信
2014/09/08 职场文书
道德模范事迹材料
2014/12/20 职场文书
财产保全担保书
2015/01/20 职场文书
管理失职检讨书
2015/05/05 职场文书