详解AngularJS中module模块的导入导出


Posted in Javascript onDecember 10, 2015

AngularJS是一款来自Google的前端JS框架,它的核心特性有:MVC、双向数据绑定、指令和语义化标签、模块化工具、依赖注入、HTML模板,以及对常用工具的封装,例如$http、$cookies、$location等。

关于AngularJS中module的导入导出,在Bob告诉我之前还没写过,谢谢Bob在这方面的指导,给到我案例代码。

在AngularJS实际项目中,我们可能需要把针对某个领域的各个方面放在不同的module中,然后把各个module汇总到该领域的一个文件中,再由主module调用。就是这样:

详解AngularJS中module模块的导入导出

以上,app.mymodule1, app.mymodule2,app.mymodule都是针对某个领域的,比如app.mymodule1中定义directive, app.mymodule2中定义controller, app.mymodule把app.mymodule1和app.mymodule2汇总到一处,然后app这个主module依赖app.mymodule。

文件结构:

mymodule/
.....helloworld.controller.js <在app.mymodule2中>
.....helloworld.direcitve.js <在app.mymodule1中>
.....index.js <在app.mymodule中>
.....math.js <在一个单独的module中>

app.js <在app这个module中>

index.html

helloworld.controller.js:
var angular = require('angular');
module.exports = angular.module('app.mymodule2', []).controller('HWController', ['$scope', function ($scope) {
 $scope.message = "This is HWController";
}]).name;

以上,通过module.exports导出module,通过require导入module。

helloworld.direcitve.js:
var angular=require('angular');
module.exports = angular.module('app.mymodule1', []).directive('helloWorld', function () {
 return {
  restrict: 'EA',
  replace: true,
  scope: {
   message: "@"
  },
  template: '<div><h1>Message is {{message}}.</h1><ng-transclude></ng-transclude></div>',
  transclude: true
 }
}).name;

接着,在index.js把pp.mymodule1和app.mymodule2汇总到一处。

var angular = require('angular');
var d = require('./helloworld.directive');
var c = require('./helloworld.controller');
module.exports = angular.module('app.mymodule', [d, c]).name;

在math.js中:

exports = {
 add: function (x, y) {
  return x + y;
 },
 mul: function (x, y) {
  return x * y;
 }
};

最后,在app.js中引用app.mymodule1:

var angular = require('angular');
var mymodule = require('./mymodule');
var math = require('./mymodule/math');
angular.module('app', [mymodule])
 .controller('AppController', ['$scope', function ($scope) {
  $scope.message = "hello world";
  $scope.result = math.add(1, 2);
 }]);

以上所述是小编给大家分享的AngularJS中module模块的导入导出,希望大家喜欢。

Javascript 相关文章推荐
兼容IE与firefox火狐的回车事件(js与jquery)
Oct 20 Javascript
邮箱下拉自动填充选择示例代码附图
Apr 03 Javascript
JS去除空格和换行的正则表达式(推荐)
Jun 14 Javascript
基于js对象,操作属性、方法详解
Aug 11 Javascript
Zepto实现密码的隐藏/显示
Apr 07 Javascript
老生常谈Bootstrap媒体对象
Jul 06 Javascript
Vue学习笔记进阶篇之vue-router安装及使用方法
Jul 19 Javascript
微信小程序之数据缓存的实例详解
Sep 29 Javascript
浅谈MUI框架中加载外部网页或服务器数据的方法
Jan 31 Javascript
使用javascript做在线算法编程
May 25 Javascript
JS中的算法与数据结构之常见排序(Sort)算法详解
Aug 16 Javascript
ant design vue嵌套表格及表格内部编辑的用法说明
Oct 28 Javascript
SpringMVC restful 注解之@RequestBody进行json与object转换
Dec 10 #Javascript
Spring mvc 接收json对象
Dec 10 #Javascript
SpringMVC返回json数据的三种方式
Dec 10 #Javascript
js操作数组函数实例小结
Dec 10 #Javascript
SpringMVC框架下JQuery传递并解析Json格式的数据是如何实现的
Dec 10 #Javascript
jQuery自定义动画函数实例详解(附demo源码)
Dec 10 #Javascript
javascript图片预加载完整实例
Dec 10 #Javascript
You might like
跟我学Laravel之请求与输入
2014/10/15 PHP
php随机获取金山词霸每日一句的方法
2015/07/09 PHP
thinkphp在php7环境下提示Cannot use ‘String’ as class name as it is reserved的解决方法
2016/09/30 PHP
深入浅析安装PhpStorm并激活的步骤详解
2020/09/17 PHP
jQuery使用手册之一
2007/03/24 Javascript
js(JavaScript)实现TAB标签切换效果的简单实例
2014/02/26 Javascript
通过JS判断联网类型和连接状态的实现代码
2015/04/01 Javascript
ASP.NET jquery ajax传递参数的实例
2016/11/02 Javascript
写给小白看的JavaScript异步
2017/11/29 Javascript
vue移动端下拉刷新和上拉加载的实现代码
2018/09/08 Javascript
CKeditor富文本编辑器使用技巧之添加自定义插件的方法
2019/06/14 Javascript
使用vant的地域控件追加全部选项
2020/11/03 Javascript
使用Vue实现一个树组件的示例
2020/11/06 Javascript
[48:28]完美世界DOTA2联赛循环赛FTD vs Magma第二场 10月30日
2020/10/31 DOTA
python根据距离和时长计算配速示例
2014/02/16 Python
python操作redis的方法
2015/07/07 Python
Python中使用插入排序算法的简单分析与代码示例
2016/05/04 Python
深入理解Python中的内置常量
2017/05/20 Python
python的常用模块之collections模块详解
2018/12/06 Python
python 求一个列表中所有元素的乘积实例
2019/06/11 Python
python 实现批量图片识别并翻译
2020/11/02 Python
CSS类名支持中文命名的示例
2014/04/04 HTML / CSS
CSS3中box-shadow的用法介绍
2015/07/15 HTML / CSS
三星美国官网:Samsung美国
2017/02/06 全球购物
一份软件工程师的面试试题
2016/02/01 面试题
技术经理的自我评价范文
2013/12/03 职场文书
最新党员思想汇报
2014/01/01 职场文书
公司年会晚宴演讲稿
2014/01/06 职场文书
公司大门门卫岗位职责
2014/06/11 职场文书
以幸福为主题的活动方案
2014/08/22 职场文书
入党积极分子自我批评思想汇报
2014/10/10 职场文书
2014年协会工作总结
2014/11/22 职场文书
教师读书笔记
2015/06/29 职场文书
交通安全温馨提示语
2015/07/14 职场文书
2016护理专业求职自荐书
2016/01/28 职场文书
python Polars库的使用简介
2021/04/21 Python