我有一個控制器和一個使用控制器功能的工廠。我這樣做的原因是因爲我想在更多控制器中使用一些功能,具體取決於實際情況$scope
我的解決方案與以下代碼相似。然而,角拋出一個錯誤,說controllerFunction
是undefined工廠中的訪問控制器作用域函數angularjs
編輯:此代碼正在工作!我在代碼中的其他地方犯了一個錯字。
angular.module('myApp')
.controller('myController', function ($scope, $http, myInterface) {
var myFactory = new myInterface($scope);
$scope.controllerFunction = function(){
// do something
}
})
.factory('myInterface', function(){
var self;
function Interface($scope) {
this.$scope = $scope;
self = this;
}
Interface.prototype.interfaceFunction = function(){
self.$scope.controllerFunction();
}
return Interface;
});
,您可以移動'controllerFunction()'函數將一個特定的服務..比你可以在任何地方使用它 –
你想從你的工廠調用$ scope.controllerFunction? – Ved
@Ved是的,我試着打電話給它。 –