Angular组件化管理实现方法分析


Posted in Javascript onMarch 17, 2017

本文实例分析了Angular组件化管理实现方法。分享给大家供大家参考,具体如下:

在做sass产品页面的时候,往往每个页面的header和footer都是一样的,还有最近我做的页面,类似datetimepicker这种组件,其实都是可以复用的代码,所以如果能把这些公用的UI组件提取出来,对于维护就会方便很多啦!!

angular框架就支持这种组件化管理,不过也有优缺点,我先来说实现方法哈!

index.html:没有用到路由,所以js都是src生引进来的

<head>
  <title>template模块化</title>
  <script type="text/javascript" src="js/lib/jquery.min.js"></script>
  <script type="text/javascript" src="js/lib/angular.min.js"></script>
  <script type="text/javascript" src="js/angular-util.js"></script>
  <script type="text/javascript" src="js/header.js"></script>
  <!-- 单页加载 -->
  <script type="text/javascript" src="js/index.js"></script>
</head>
<body ng-app="frameApp" ng-controller="frameCtrl">
  <header frame-header></header>
  <div ng-click="a1()">click</div>
  <div>{{ default }}</div>
</body>

header.js:用闭包封装了header组件指向template模板,这里面的A指的是上面html里frame-header的属性,在这里面的link还可以调用当前作用域内的方法

(function () {
  var header = angular.module("header",[]);
  header.directive('frameHeader',function(){
    return {
      restrice: 'A',
      templateUrl: 'template.html',
      replace: false,
      link: function ($scope, iElm, iAttrs) {
        $scope.navigateTo = function(){
          console.log($scope.aa)
        }
      }
    }
  });
})();

header.html:模板部分,我简单的写了个导航

<ul>
  <li ng-click="navigateTo('index')"><a href="index.html" rel="external nofollow" >导航1</a></li>
  <li><a href="page1.html" rel="external nofollow" >导航2</a></li>
  <li>导航3</li>
  <li>导航4</li>
</ul>

index.js:引入header模块

var myApp = angular.module("frameApp",['utilModule','header']);
myApp.controller('frameCtrl',
  ['$scope','utilService',
  function($scope,utilService){
    $scope.aa = 'yyyyyyyyyyy'
    $scope.a1 = function(){
      utilService.lemon()
    };
    $scope.default = 'this is default'
  }]);

这样一来,大功告成啦就!每个页面只要<header frame-header></header>这个标签,就能引入头部导航了!

不过这种组件化的引入方式,我个人并不推荐使用在引入header和footer,因为这样的话,相当于每个页面都会加载一遍templat.html很影响速度,我建议,在引入datetimepicker这样的组件的时候在使用!因为这种小组件是按需加载的,用得着再加载,不会影响页面响应效率。

希望本文所述对大家AngularJS程序设计有所帮助。

Javascript 相关文章推荐
Jquery选择器 $实现原理
Dec 02 Javascript
asp.net下使用jquery 的ajax+WebService+json 实现无刷新取后台值的实现代码
Sep 19 Javascript
Bootstrap~多级导航(级联导航)的实现效果【附代码】
Mar 08 Javascript
js阻止浏览器默认行为的简单实例
May 15 Javascript
概述一个页面从输入URL到页面加载完的过程
Dec 16 Javascript
轻松实现jQuery添加删除按钮Click事件
Mar 13 Javascript
angular-ngSanitize模块-$sanitize服务详解
Jun 13 Javascript
Vue项目引进ElementUI组件的方法
Nov 11 Javascript
layui 对弹窗 form表单赋值的实现方法
Sep 04 Javascript
layui select 禁止点击的实现方法
Sep 05 Javascript
基于JS实现快速读取TXT文件
Aug 25 Javascript
vue3.0中setup使用(两种用法)
Dec 02 Vue.js
Bootstrap表单制作代码
Mar 17 #Javascript
Bootstrap 过渡效果Transition 模态框(Modal)
Mar 17 #Javascript
使用vue.js编写蓝色拼图小游戏
Mar 17 #Javascript
Vue.js实现一个漂亮、灵活、可复用的提示组件示例
Mar 17 #Javascript
javascript 动态生成css代码的两种方法
Mar 17 #Javascript
AngularJS中$http使用的简单介绍
Mar 17 #Javascript
单击按钮发送验证码,出现倒计时的简单实例
Mar 17 #Javascript
You might like
用PHP生成静态HTML速度快类库
2007/03/18 PHP
坏狼的PHP学习教程之第2天
2008/06/15 PHP
php遍历目录方法小结
2015/03/10 PHP
详解PHP错误日志的获取方法
2015/07/20 PHP
CodeIgniter读写分离实现方法详解
2016/01/20 PHP
ThinkPHP中session函数详解
2016/09/14 PHP
微信公众号实现会员卡领取功能
2017/06/08 PHP
PHP正则表达式笔记与实例详解
2019/05/09 PHP
PHP中16个高危函数整理
2019/09/19 PHP
PHP7 其他修改
2021/03/09 PHP
斜45度寻路实现函数
2009/08/20 Javascript
把html页面的部分内容保存成新的html文件的jquery代码
2009/11/12 Javascript
通过正则格式化url查询字符串实现代码
2012/12/28 Javascript
JavaScript中的类数组对象介绍
2014/12/30 Javascript
浅谈JavaScript 覆盖原型以及更改原型
2016/08/31 Javascript
input获取焦点时底部菜单被顶上来问题的解决办法
2017/01/24 Javascript
VUE 更好的 ajax 上传处理 axios.js实现代码
2017/05/10 Javascript
vue项目中jsonp跨域获取qq音乐首页推荐问题
2018/05/30 Javascript
vue2.0实现音乐/视频播放进度条组件
2018/06/06 Javascript
微信小程序自定义navigationBar顶部导航栏适配所有机型(附完整案例)
2020/04/26 Javascript
使用Vant完成Dialog弹框案例
2020/11/11 Javascript
python绘制简单彩虹图
2018/11/19 Python
python networkx 根据图的权重画图实现
2019/07/10 Python
Tensorflow限制CPU个数实例
2020/02/06 Python
Python使用GitPython操作Git版本库的方法
2020/02/29 Python
使用OpenCV实现道路车辆计数的使用方法
2020/07/15 Python
Numpy中np.random.rand()和np.random.randn() 用法和区别详解
2020/10/23 Python
python爬虫scrapy框架之增量式爬虫的示例代码
2021/02/26 Python
莱德杯高尔夫欧洲官方商店:Ryder Cup Shop
2019/08/14 全球购物
中文专业毕业生自荐信
2014/05/24 职场文书
村当支部个人对照检查材料思想汇报
2014/10/06 职场文书
中学生旷课检讨书模板
2014/10/08 职场文书
管辖权异议上诉状
2015/05/23 职场文书
活动简报范文
2015/07/22 职场文书
三八妇女节致辞
2015/07/31 职场文书
公司新员工欢迎词
2015/09/30 职场文书