Javascript 将$scope发送到原型函数中的方法

Javascript 将$scope发送到原型函数中的方法,javascript,angularjs,angularjs-scope,Javascript,Angularjs,Angularjs Scope,我正试图找出让$scope可以从我的原型方法访问的方法: 将$scope作为参数发送: var myController = function($scope, Service) { $scope.myMethod = function() { this.myMethod($scope); } } myController.prototype.myMethod = function($scope) { // accessing the variables

我正试图找出让
$scope
可以从我的原型方法访问的方法:

$scope
作为参数发送:

var myController = function($scope, Service) {
    $scope.myMethod = function() {
        this.myMethod($scope);
    }
} 
myController.prototype.myMethod = function($scope) {
    // accessing the variables trhough the parameter.
}
将对
$scope
的引用添加到控制器本身中

var myController = function($scope, Service) {
    this.scope = $scope;
    $scope.myMethod = function() {
        this.myMethod();
    }
}
myController.prototype.myMethod = function() {
    // accessing the variables through this.scope
}

是否有其他方法或途径或更好的方法来访问原型函数中的
$scope

您不应该玩这样的控制器

您已经将控制器中的method-myMethod定义为

$scope.myMethod = function(){...}
此方法可以访问所有$scope属性

我看不出这样做有什么意义?你能详细说明一下你为什么需要这个吗


否则,您必须将$scope作为方法参数传递,这将完全打破基于scope的模块化范例。

Javascript不是一种面向对象的语言,它是一种函数式语言——尝试复制OOP对象和继承并不是编写JS的最佳实践方式。我并不是说你不能,但你可能会发现实现一个包含回调和闭包的解决方案比实现一个bodged OOP更容易:-)