角度控制器(和作用域)继承如何工作

角度控制器(和作用域)继承如何工作,第1张

角度控制器(和作用域)继承如何工作

这是一个如何在Angular中扩展控制器的示例。

myApp.service('baseCtrl', function () {  this.name = 'base';  this.getName = function() {    return this.name;  };});myApp.controller('MainController', ['baseCtrl', function (baseCtrl) {  angular.extend(this, baseCtrl);  this.name = 'main';}]);myApp.controller('Child1', ['baseCtrl', function (baseCtrl) {  angular.extend(this, baseCtrl);  this.name = 'child1';}]);myApp.controller('Child2', ['baseCtrl', function (baseCtrl) {  angular.extend(this, baseCtrl);  this.name = 'child2';}]);

它要求使用

controllerAs
,它取代
$scope
this
,它是这样的情况特别好。

注意

service
,它是
new
在幕后使用的,而不是其他Angular服务类型的用法,因此
this...
可以将语句从控制器直接带到单独的服务。

有几种执行控制器继承的方法。

关于原始代码,Angular中没有“控制器继承性”。和

$scope
原型继承假设

$scope.getName = function() {    return $scope.name;};

$scope.name
从定义它的上下文返回,
MainController
在您的情况下是函数。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5651638.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存