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的输入框在光标位置插入内容, 并选中
Oct 29 Javascript
jQuery实现图片信息的浮动显示实例代码
Aug 28 Javascript
七个很有意思的PHP函数
May 12 Javascript
JavaScript charCodeAt方法入门实例(用于取得指定位置字符的Unicode编码)
Oct 17 Javascript
JavaScript 事件对象介绍
Apr 13 Javascript
JS实现刷新父页面不弹出提示框的方法
Jun 22 Javascript
利用Js的console对象,在控制台打印调式信息测试Js的实现
Nov 26 Javascript
利用JS制作万年历的方法
Aug 16 Javascript
JavaScript中的高级函数
Jan 04 Javascript
JavaScript 下载svg图片为png格式
Jun 21 Javascript
Vue 组件封装 并使用 NPM 发布的教程
Sep 30 Javascript
js防抖和节流的深入讲解
Dec 06 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/04 日漫
世界咖啡生产者论坛呼吁:需要立即就咖啡价格采取认真行动
2021/03/06 咖啡文化
php set_time_limit()函数的使用详解
2013/06/05 PHP
PHP入门经历和学习过程分享
2014/04/11 PHP
php similar_text()函数的定义和用法
2016/05/12 PHP
javascript 简单高效判断数据类型 系列函数 By shawl.qiu
2007/03/06 Javascript
Javascript 读后台cookie代码
2008/09/15 Javascript
jQuery随便控制任意div隐藏的方法
2013/06/28 Javascript
javascript版的in_array函数(判断数组中是否存在特定值)
2014/05/09 Javascript
Kindeditor在线文本编辑器如何过滤HTML
2016/04/14 Javascript
jquery对象访问是什么及使用方法介绍
2016/05/03 Javascript
浅析Bootstrap组件之面板组件
2016/05/04 Javascript
jQuery监听文件上传实现进度条效果的方法
2016/10/16 Javascript
如何防止INPUT按回车自动提交表单FORM
2016/12/06 Javascript
彻底学会Angular.js中的transclusion
2017/03/12 Javascript
带你快速理解javascript中的事件模型
2017/08/14 Javascript
Vue三种常用传值示例(父传子、子传父、非父子)
2018/07/24 Javascript
jQuery简单实现根据日期计算星期几的方法
2019/01/09 jQuery
JavaScript实现随机五位数验证码
2019/09/27 Javascript
小程序实现多个选项卡切换
2020/06/19 Javascript
vue.js 输入框输入值自动过滤特殊字符替换中问标点操作
2020/08/31 Javascript
解决vue watch数据的方法被调用了两次的问题
2020/11/07 Javascript
[01:13:01]2018DOTA2亚洲邀请赛 4.4 淘汰赛 TNC vs VG 第三场
2018/04/05 DOTA
使用Python获取Linux系统的各种信息
2014/07/10 Python
Python创建模块及模块导入的方法
2015/05/27 Python
Python数据类型详解(三)元祖:tuple
2016/05/08 Python
使用python和Django完成博客数据库的迁移方法
2018/01/05 Python
用Python一键搭建Http服务器的方法
2018/06/01 Python
python pandas库中DataFrame对行和列的操作实例讲解
2018/06/09 Python
python函数map()和partial()的知识点总结
2020/05/26 Python
英文自荐信格式
2013/11/28 职场文书
十八届三中全会宣传方案
2014/02/21 职场文书
县委务虚会发言材料
2014/10/20 职场文书
工程催款通知书
2015/04/17 职场文书
解决Go gorm踩过的坑
2021/04/30 Golang
Python Numpy库的超详细教程
2022/04/06 Python