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 克隆数组最简单的方法
Feb 12 Javascript
从jquery的过滤器.filter()方法想到的
Sep 29 Javascript
javascript实现网页屏蔽Backspace事件,输入框不屏蔽
Jul 21 Javascript
基于bootstrap3和jquery的分页插件
Jul 31 Javascript
底部悬浮通栏可以关闭广告位的实现方法
Jun 01 Javascript
基于Vuejs实现购物车功能
Aug 02 Javascript
纯JS实现简单的日历
Jun 26 Javascript
vue项目中api接口管理总结
Apr 20 Javascript
Angular中innerHTML标签的样式不起作用的原因解析
Jun 18 Javascript
vue表单数据交互提交演示教程
Nov 13 Javascript
VUE Elemen-ui之穿梭框使用方法详解
Jan 19 Javascript
解决Mint-ui 框架Popup和Datetime Picker组件滚动穿透的问题
Nov 04 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
一个连接两个不同MYSQL数据库的PHP程序
2006/10/09 PHP
PHP中__get()和__set()的用法实例详解
2013/06/04 PHP
PHP对象相互引用的内存溢出实例分析
2014/08/28 PHP
PHP中防止SQL注入方法详解
2014/12/25 PHP
WordPress开发中用于获取近期文章的PHP函数使用解析
2016/01/05 PHP
php 使用fopen函数创建、打开文件详解及实例代码
2016/09/24 PHP
PHP长网址与短网址的实现方法
2017/10/13 PHP
JavaScript设置首页和收藏页面的小例子
2013/11/11 Javascript
JS中产生20位随机数以0-9为例也可以是a-z A-Z
2014/08/01 Javascript
下拉框select的绑定示例
2014/09/04 Javascript
Javascript学习笔记之函数篇(六) : 作用域与命名空间
2014/11/23 Javascript
jquery简单实现幻灯片的方法
2015/08/03 Javascript
JavaScript数据推送Comet技术详解
2016/04/07 Javascript
利用fecha进行JS日期处理
2016/11/21 Javascript
Angular 封装并发布组件的方法示例
2018/04/19 Javascript
jQuery ajax仿Google自动提示SearchSuggess功能示例
2019/03/28 jQuery
微信小程序在ios下Echarts图表不能滑动的问题解决
2019/07/10 Javascript
JS中的算法与数据结构之二叉查找树(Binary Sort Tree)实例详解
2019/08/16 Javascript
Vue 动态路由的实现及 Springsecurity 按钮级别的权限控制
2019/09/05 Javascript
node-red File读取好保存实例讲解
2019/09/11 Javascript
Node.js API详解之 querystring用法实例分析
2020/04/29 Javascript
Element图表初始大小及窗口自适应实现
2020/07/10 Javascript
[59:48]LGD vs IG 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
python networkx 包绘制复杂网络关系图的实现
2019/07/10 Python
解决tensorflow打印tensor有省略号的问题
2020/02/04 Python
Python如何使用ConfigParser读取配置文件
2020/11/12 Python
scrapy在python爬虫中搭建出错的解决方法
2020/11/22 Python
Python之字符串的遍历的4种方式
2020/12/08 Python
python 基于PYMYSQL使用MYSQL数据库
2020/12/24 Python
python热力图实现简单方法
2021/01/29 Python
canvas实现有递增动画的环形进度条的实现方法
2019/07/10 HTML / CSS
宝拉珍选澳大利亚官方购物网站:Paula’s Choice澳大利亚
2016/09/13 全球购物
Hertz荷兰:荷兰和全球租车
2018/01/07 全球购物
法学毕业生自我鉴定
2013/11/08 职场文书
《雷鸣电闪波尔卡》教学反思
2014/02/23 职场文书
nginx负载功能+nfs服务器功能解析
2022/02/28 Servers