从工厂调用函数 Angularjs
Calling a function from a factory Angularjs
还比较新。我正在尝试能够从工厂获取和设置值,但我似乎无法获取 运行 的函数。它称为类型错误。我也不能在不杀死它的情况下将 $scope 添加到工厂。帮忙?
app.factory('globals', function() {
var globalTag = {};
globalTag.currDrive = "";
globalTag.myFaults = "";
var availDrives = "";
globalTag.currDrive = "this sucks";
globalTag.myFaults = "I've got a lovely bunch of faulty faults";
function setDrive(driveID) {
globalTag.currDrive = driveID;
};
return globalTag;
});
app.controller('FaultController', ['$scope', '$routeParams', 'globals', function($scope, $routeParams, globals) {
//Setup dummy paramenters
$scope.driveInfo = {};
$scope.driveInfo = globals.setDrive("350");
}]);
您永远不会从服务中公开 setDrive 方法。正确的代码是:
app.factory('globals', function () {
var globalTag = {};
globalTag.currDrive = "";
globalTag.myFaults = "";
var availDrives = "";
globalTag.currDrive = "this sucks";
globalTag.myFaults = "I've got a lovely bunch of faulty faults";
function setDrive(driveID) {
globalTag.currDrive = driveID;
};
globalTag.setDrive = setDrive; // <--- make it part of globals service API
return globalTag;
});
还比较新。我正在尝试能够从工厂获取和设置值,但我似乎无法获取 运行 的函数。它称为类型错误。我也不能在不杀死它的情况下将 $scope 添加到工厂。帮忙?
app.factory('globals', function() {
var globalTag = {};
globalTag.currDrive = "";
globalTag.myFaults = "";
var availDrives = "";
globalTag.currDrive = "this sucks";
globalTag.myFaults = "I've got a lovely bunch of faulty faults";
function setDrive(driveID) {
globalTag.currDrive = driveID;
};
return globalTag;
});
app.controller('FaultController', ['$scope', '$routeParams', 'globals', function($scope, $routeParams, globals) {
//Setup dummy paramenters
$scope.driveInfo = {};
$scope.driveInfo = globals.setDrive("350");
}]);
您永远不会从服务中公开 setDrive 方法。正确的代码是:
app.factory('globals', function () {
var globalTag = {};
globalTag.currDrive = "";
globalTag.myFaults = "";
var availDrives = "";
globalTag.currDrive = "this sucks";
globalTag.myFaults = "I've got a lovely bunch of faulty faults";
function setDrive(driveID) {
globalTag.currDrive = driveID;
};
globalTag.setDrive = setDrive; // <--- make it part of globals service API
return globalTag;
});