AngularJS控制器繼承自另一控制器_AngularJS

來源:互聯網
上載者:User

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控制器繼承自另一控制器的相關知識,希望對大家有所協助!

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.