嗨我是angularjs的新手,我正在嘗試向控制器注入一些工廠,但我面臨困難。我的工廠工作正常。我可以在工廠中設置數據。如何將工廠注入控制器?
下面是我注入工廠的代碼。
function() {
angular.module('RoslpApp').controller('RegistrationOTPVerification', ['$scope', '$http', '$translatePartialLoader', '$translate', '$state', '$stateParams', 'SomeFactory',
function ($scope, $http, $translatePartialLoader, $translate, $state, $stateParams, CONSTANTS, SomeFactory) {
var OTP = $stateParams.pageList.OTP;
$scope.EnterOTP = "Please enter this OTP to verify the user " + OTP;
//RegistrationOTPVerification.$inject = ['SomeFactory'];
//Facing issues in above line
alert(1);
function RegistrationOTPVerification(SomeFactory) {
var vm = this;
vm.someVariable = SomeFactory.getData();
console.log(vm.someVariable); // logs your data
alert(vm.someVariable);
}
});
這是我的工廠代碼。
(function() {
'use strict';
angular
.module('RoslpApp')
.factory('SomeFactory', SomeFactory);
SomeFactory.$inject = [];
function SomeFactory() {
var someData;
var factory = {
setData: setData,
getData: getData
};
function setData(data) {
someData = data;
}
function getData() {
return someData;
}
return factory;
}
})();
我設置一些其他控制器的數據與SomeFactory.setData("123")
我想如下注入someFactory
:
RegistrationOTPVerification.$inject = ['SomeFactory'];
但每當我寫這篇文章,我得到錯誤RegistrationOTPVerification
是undefined
。如果我評論該行一切正常,但我想從工廠獲得一些數據。
我的工廠名稱是SomeFactory
,我想注入上面的控制器。任何幫助,將不勝感激。
分享您的工廠代碼,並提到究竟出了什麼問題 – tanmay