AngularJS控制器继承自另一控制器


Posted in Javascript onMay 09, 2016

AngularJS里控制器继承,常用的就是作用域嵌套作用域。默认情况下,当前作用域中无法找到某个属性时,就会在父级作用域中进行查找,若找不到直至查找到$rootScope。

但有些情况下,rootScope下就是我们的controller,不可能将大量的公用属性方法写到rootScope里去。

比如说有多个类似的页面,都有面包屑,搜索栏,工具栏,表格等元素,面包屑表格这种元素考虑做成directive,那么必然会有许多类似的配置需要从controller传到组件里去,也会产生很多工具类方法用于处理数据等,这时候在每个页面的controller里重复写相同的代码显然很难看,就需要用到继承。

在StackOverflow上找到了解决方案,原来AngularJS已经考虑到这种情况了,提供了$controller

var app = angular.module('angularjs-starter', []); 
app.controller('ParentCtrl ', function($scope) {
// I'm the sibling, but want to act as parent
});
app.controller('ChildCtrl', function($scope, $controller) {
$controller('ParentCtrl', {$scope: $scope}); //This works
});

以上所述是小编给大家介绍的AngularJS控制器继承自另一控制器的相关知识,希望对大家有所帮助!

Javascript 相关文章推荐
(currentStyle)javascript为何有时用style得不到已设定的CSS的属性
Aug 15 Javascript
javascript 新浪背投广告实现代码
Jul 07 Javascript
Jquery Ajax学习实例3 向WebService发出请求,调用方法返回数据
Mar 16 Javascript
jQuery检测输入的字符串包含的中英文的数量
Apr 17 Javascript
使用AngularJS和PHP的Laravel实现单页评论的方法
Jun 19 Javascript
Highcharts学习之坐标轴
Aug 02 Javascript
jQuery ajaxForm()的应用
Oct 14 Javascript
使用express来代理服务的方法
Jun 21 Javascript
微信小程序后端实现授权登录
Feb 24 Javascript
Node.js API详解之 zlib模块用法分析
May 19 Javascript
vue 如何从单页应用改造成多页应用
Oct 23 Javascript
vue项目多环境配置(.env)的实现
Jul 21 Vue.js
如何使用AngularJs打造权限管理系统【简易型】
May 09 #Javascript
ajax跨域调用webservice的实现代码
May 09 #Javascript
MVC+jQuery.Ajax异步实现增删改查和分页
Dec 22 #Javascript
基于Jquery插件Uploadify实现实时显示进度条上传图片
Mar 26 #Javascript
jQuery实现三级菜单的代码
May 09 #Javascript
Boostrap入门准备之border box
May 09 #Javascript
CKEditor无法验证的解决方案(js验证+jQuery Validate验证)
May 09 #Javascript
You might like
PHP中利用substr_replace将指定两位置之间的字符替换为*号
2011/01/27 PHP
php对csv文件的读取,写入,输出下载操作详解
2013/08/10 PHP
PHP的反射类ReflectionClass、ReflectionMethod使用实例
2014/08/05 PHP
php静态文件返回304技巧分享
2015/01/06 PHP
PHP基于堆栈实现的高级计算器功能示例
2017/09/15 PHP
PHP中OpenSSL加密问题整理
2017/12/14 PHP
jquery 卷帘效果实现代码(不同方向)
2013/02/05 Javascript
js添加table的行和列 具体实现方法
2013/07/22 Javascript
jquery ajax实现下拉框三级无刷新联动,且保存保持选中值状态
2013/10/29 Javascript
node.js中的fs.rmdir方法使用说明
2014/12/16 Javascript
简介JavaScript中用于处理正切的Math.tan()方法
2015/06/15 Javascript
JavaScript对象数组的排序处理方法
2015/10/21 Javascript
JS 滚动事件window.onscroll与position:fixed写兼容IE6的回到顶部组件
2016/10/10 Javascript
canvas实现十二星座星空图
2017/02/14 Javascript
基于BootStrap的前端分页带省略号和上下页效果
2017/05/18 Javascript
基于vue-cli vue-router搭建底部导航栏移动前端项目
2018/02/28 Javascript
vue如何将v-for中的表格导出来
2018/05/07 Javascript
Vue实现一个无限加载列表功能
2018/11/13 Javascript
怎么使用javascript深度拷贝一个数组
2019/06/06 Javascript
vue 使用插槽分发内容操作示例【单个插槽、具名插槽、作用域插槽】
2020/03/06 Javascript
[01:42]TI4西雅图DOTA2前线报道 第一顿早饭哦
2014/07/08 DOTA
[02:05]2014DOTA2西雅图国际邀请赛 BBC第二天小组赛总结
2014/07/11 DOTA
批量获取及验证HTTP代理的Python脚本
2017/04/23 Python
python3设计模式之简单工厂模式
2017/10/17 Python
python实现决策树
2017/12/21 Python
Python实现生成密码字典的方法示例
2019/09/02 Python
利用python实现冒泡排序算法实例代码
2019/12/01 Python
Pytorch中的VGG实现修改最后一层FC
2020/01/15 Python
Pandas之缺失数据的实现
2021/01/06 Python
快速实现一个简单的canvas迷宫游戏的示例
2018/07/04 HTML / CSS
27个经典Linux面试题及答案,你知道几个?
2013/01/10 面试题
什么是测试驱动开发(TDD)
2012/02/15 面试题
安全生产年活动总结
2014/08/29 职场文书
新教师培训心得体会
2014/09/02 职场文书
邹越演讲观后感
2015/06/15 职场文书
学困生帮扶工作总结
2015/08/13 职场文书