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 相关文章推荐
JavaScript 浏览器验证代码(来自discuz)
Jul 17 Javascript
5种处理js跨域问题方法汇总
Dec 04 Javascript
jquery+javascript编写国籍控件
Feb 12 Javascript
纯JS实现旋转图片3D展示效果
Apr 12 Javascript
Hammer.js+轮播原理实现简洁的滑屏功能
Feb 02 Javascript
Angularjs 制作购物车功能实例代码
Sep 14 Javascript
浅析vue数据绑定
Jan 17 Javascript
JavaScript中的this陷阱的最全收集并整理(没有之一)
Feb 21 Javascript
js鼠标经过tab选项卡时实现切换延迟
Mar 24 Javascript
深入理解 JavaScript 中的 JSON
Apr 06 Javascript
详解jenkins自动化部署vue
May 14 Javascript
EXTJS7实现点击拖拉选择文本
Dec 17 Javascript
如何使用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 curl_setopt()函数实例代码与参数分析
2011/06/02 PHP
探讨:如何使用PhpDocumentor生成文档
2013/06/25 PHP
浅析php与数据库代码开发规范
2013/08/08 PHP
Yii框架中 find findAll 查找出制定的字段的方法对比
2014/09/10 PHP
ThinkPHP提交表单时默认自动转义的解决方法
2014/11/25 PHP
php绘图之生成饼状图的方法
2015/01/24 PHP
thinkphp5引入公共部分header、footer的方法详解
2018/09/14 PHP
Laravel框架集成UEditor编辑器的方法图文与实例详解
2019/04/17 PHP
event.srcElement+表格应用
2006/08/29 Javascript
基于jquery的实现简单的表格中增加或删除下一行
2010/08/01 Javascript
jquery实现文字由下到上循环滚动的实例代码
2013/08/09 Javascript
JQuery each()嵌套使用小结
2014/04/18 Javascript
JQuery EasyUI 数字格式化处理示例
2014/05/05 Javascript
javascript根据时间生成m位随机数最大13位
2014/10/30 Javascript
纯JavaScript代码实现文本比较工具
2016/02/17 Javascript
浅析Bootstrap表格的使用
2016/06/23 Javascript
Angularjs使用directive自定义指令实现attribute继承的方法详解
2016/08/05 Javascript
Angular2学习笔记——详解NgModule模块
2016/12/02 Javascript
JavaScript中使用参数个数实现重载功能
2017/09/01 Javascript
JQuery属性操作与循环用法示例
2019/05/15 jQuery
nodejs实现日志读取、日志查找及日志刷新的方法分析
2019/05/20 NodeJs
如何使用proxy实现一个简单完整的MVVM库的示例代码
2019/09/17 Javascript
利用python获得时间的实例说明
2013/03/25 Python
python访问系统环境变量的方法
2015/04/29 Python
详解Python的三种可变参数
2019/05/08 Python
Django def clean()函数对表单中的数据进行验证操作
2020/07/09 Python
英国在线照明超市:Castlegate Lights
2019/10/30 全球购物
体育纪念品、亲笔签名的体育收藏品:Steiner Sports
2020/07/31 全球购物
PHP解析URL是哪个函数?怎么用?
2013/05/09 面试题
租房协议书范本
2014/04/09 职场文书
学校党委干部个人对照检查材料思想汇报
2014/10/09 职场文书
个人向公司借款协议书
2014/10/09 职场文书
三峡人家导游词
2015/01/31 职场文书
居委会工作总结2015
2015/05/18 职场文书
Python中zipfile压缩包模块的使用
2021/05/14 Python
 python中的元类metaclass详情
2022/05/30 Python