1、控制器中注入服务时,出问题,当前pageInit这个页面无法加载,页面无报错信息。
var homepage = angular.module(‘homepage‘); homepage.controller(‘pageInit‘, function($scope, $state,localLibraryService) { alert(333333) localLibraryService.getZhaopin(); /** //直接运行下面这段代码没有问题,但是通过注入服务器的形式时,直接出问题,但是页面没有错误信息。 $http.get(‘data/zhaopin.json‘).success(function(data){ // $scope.zhaopin = data; alert(data.showObj); $scope.infoList = data.showObj; }).error(function(){ alert("an unexpected error ocurred!"); }); */ }) homepage.service(‘localLibraryService‘, function($scope,$http){ this.getZhaopin = function(){ $http.get(‘data/zhaopin.json‘).success(function(data){ alert(data.showObj); $scope.infoList = data.showObj; }).error(function(){ alert("an unexpected error ocurred!"); }); } });
后来将服务内的内容全部删除,只剩一个alert,问题依旧。直到将服务改成这样以后,才没有问题。
homepage.service(‘localLibraryService‘, function(){ alert(123); });
后知后觉,问度娘方才知晓,原来$scope不能注入到服务中。
百度知道里的答案:
你可以注入$rootScope $scope是不行的。只能在控制器里面才可以,factory是一个服务,你可以把他看做是一个全局变量,他是不对dom操作的,所以不能注入$scope
时间: 2024-10-10 07:51:54