SORU
27 AĞUSTOS 2013, Salı


AngularJS denetleyicisi aynı modülü başka bir kumanda devralabilir?

Bir modül içinde bir kumanda dışında bir kumanda: özellikleri devralır

var app = angular.module('angularjs-starter', []);

var ParentCtrl = function ($scope, $location) {
};

app.controller('ChildCtrl', function($scope, $injector) {
  $injector.invoke(ParentCtrl, this, {$scope: $scope});
});

Örnek üzerinden: http://blog.omkarpatil.com/2013/02/controller-inheritance-in-angularjs.html

Bir modül bir kardeş miras içinde bir kumanda da?

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, $injector) {
  $injector.invoke(ParentCtrl, this, {$scope: $scope}); //This does not work
});

İkinci kod $injector.invoke ilk parametre olarak bir işlev gerektirir ve 6* *başvuru bulmaz beri çalışmıyor.

CEVAP
27 Kasım 2013, ÇARŞAMBA


Evet, olabilir ama $controller servis denetleyicisi yerine oluşturmak için kullanmanız gerekir:-

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
});

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Bart Baker

    Bart Baker

    1 Aralık 2006
  • MandMEvangelists

    MandMEvangel

    28 Ocak 2008
  • MuscleProdigyTV

    MuscleProdig

    8 Ocak 2011