我已经创建了服务,但我没有得到如何在我的控制器中使用此服务。如何在angular.js控制器中使用服务?
(function(){
'use.strict';
angular
.module('app.core')
.factory('shareBtwnCtrlr', shareBtwnCtrlrService);
/** @ngInject */
function shareBtwnCtrlrService() {
shareBtwnCtrlr = function($scope, $rootScope){
$scope.value = $rootScope.test;
}
return shareBtwnCtrlr;
}
})();
在上面的代码$ rootScope.test从一个控制器来了,现在我已经在使用此服务的另一个控制器使用这个$ scope.value。另一个控制器如下所示
(function(){
'use strict';
angular.module('app.product')
.controller('ProductController', ProductController);
/** @ngInject */
//ProductController.$inject = ['$http', '$location', '$scope'];
function ProductController($http, $location, $rootScope, $scope, $localStorage, $interval, $timeout,$mdDialog, $document, shareBtwnCtrlr){
var vm = this;
}
})();
为什么在其他的控制器不使用'$ rootScope.test'? –
您使用的是严格模式,并且您没有使用'var'声明'shareBtwnCtrlr'。这可能会引发错误 –
@SaneeshB在这里我使用两个控制器,当时第一个控制器执行第一个$ scope.value显示结果为第二个控制器执行结果存储后未定义,但我无法在第一个控制器中得到该结果。 – Kevin