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 多种搜索引擎集成的页面实现代码
Jan 02 Javascript
基于jquery实现的类似百度搜索的输入框自动完成功能
Aug 23 Javascript
CheckBoxList多选样式jquery、C#获取选择项
Sep 06 Javascript
原生javascript获取元素样式
Dec 31 Javascript
JQuery控制DIV的选取实现方法
Sep 18 Javascript
canvas实现十二星座星空图
Feb 14 Javascript
AngularJS基于factory创建自定义服务的方法详解
May 25 Javascript
基于jQuery选择器之表单对象属性筛选选择器的实例
Sep 19 jQuery
分享ES6的7个实用技巧
Jan 18 Javascript
vue+element实现批量删除功能的示例
Feb 28 Javascript
vue-cli3 项目优化之通过 node 自动生成组件模板 generate View、Component
Apr 30 Javascript
React服务端渲染原理解析与实践
Mar 04 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
杏林同学录(四)
2006/10/09 PHP
PHP最常用的2种设计模式工厂模式和单例模式介绍
2012/08/14 PHP
解析thinkphp中的M()与D()方法的区别
2013/06/22 PHP
实现PHP+Mysql无限分类的方法汇总
2015/03/02 PHP
PHP设计模式之工厂模式与单例模式
2016/09/28 PHP
js返回上一页并刷新代码整理
2012/12/21 Javascript
javascript表单验证 - Parsley.js使用和配置
2013/01/25 Javascript
js获取IFRAME当前的URL的方法
2013/11/13 Javascript
JavaScript闭包详解
2015/02/02 Javascript
JavaScript实现向setTimeout执行代码传递参数的方法
2015/04/16 Javascript
javascript中$(function() {});写与不写有哪些区别
2015/08/10 Javascript
JavaScript的Number对象的toString()方法
2015/12/18 Javascript
AngularJS基础 ng-non-bindable 指令详细介绍
2016/08/02 Javascript
整理关于Bootstrap表单的慕课笔记
2017/03/29 Javascript
微信小程序开发之map地图实现教程
2017/06/08 Javascript
vue-cli脚手架build目录下utils.js工具配置文件详解
2018/09/14 Javascript
js纯前端实现腾讯cos文件上传功能的示例代码
2019/05/14 Javascript
vue中的面包屑导航组件实例代码
2019/07/01 Javascript
webpack优化之代码分割与公共代码提取详解
2019/11/22 Javascript
javascript设计模式 ? 迭代器模式原理与用法实例分析
2020/04/17 Javascript
jQuery 添加元素和删除元素的方法
2020/07/15 jQuery
python使用urllib2实现发送带cookie的请求
2015/04/28 Python
PyCharm 2020.2.2 x64 下载并安装的详细教程
2020/10/15 Python
python 模拟登陆163邮箱
2020/12/15 Python
HTML5的语法变化介绍
2013/08/13 HTML / CSS
加拿大消费电子和手机购物网站:The Source
2017/01/28 全球购物
斯洛伐克香水和化妆品购物网站:Parfemy-Elnino.sk
2020/01/28 全球购物
介绍一下gcc特性
2012/01/20 面试题
公司离职证明范本
2014/01/13 职场文书
数控专业自荐书范文
2014/03/16 职场文书
《沉香救母》教学反思
2014/04/19 职场文书
小学优秀班主任事迹材料
2014/05/17 职场文书
见习报告的格式
2014/11/04 职场文书
英语投诉信范文
2015/07/03 职场文书
SQL 尚未定义空闲 CPU 条件 - OnIdle 作业计划将不起任何作用
2021/06/30 SQL Server
Kubernetes控制节点的部署
2022/04/01 Servers