在angular外获取控制器依赖的服务


app.controller('SelectCtrl', ['$scope', "$http","$timeout",function ($scope,$http,$timeout) {
   //初始化数据模型对象
   $scope.selectList = [];
   /**
    * function: 更新数据模型对象
    */
   $scope.updateData = function(data){
   	$scope.selectList = data;
   }
   
   $scope.ajaxData = function(gnmk){
	   var requestConfig = {  
  			 method: 'get',  
  			 url: "../../../xwzx/fwjk/getKidList.do",  
  			 params: {gnmk:gnmk} 			 
  	      }          	
	   $http(requestConfig).success(function(data){
		   var data = JSON.parse(data);
		   $scope.updateData(data);


	   });
      
   }	
	
}]);


在angular外获取依赖服务,并重写$scope.ajaxData方法


app.factory('timestampMarker', [function() {
    return {
        request: function(config) {
            config.requestTimestamp = new Date().getTime();
            return config;
        },
        response: function(response) {
            response.config.responseTimestamp = new Date().getTime();
            return response;
        }
    };
}]);

app.config(['$httpProvider', function($httpProvider) {
    $httpProvider.interceptors.push('timestampMarker');
}]);

function resetHttp(){
	var $scope = angular.element($("#selectCtrl")).scope();	
	var injector1 = angular.element($("#selectCtrl")).injector();
	//在angular外获取依赖服务
	var  $http =  injector1.get('$http'); 
	var $timeout =  injector1.get('$timeout');	
	
	 $scope.ajaxData = function(gnmk){
		   var requestConfig = {  
	  			 method: 'get',  
	  			 url: "../../../xwzx/fwjk/getKidList.do",  
	  			 params: {gnmk:gnmk} 			 
	  	      }          			   
		   $http(requestConfig).then(function(response){
			   var time = response.config.responseTimestamp - response.config.requestTimestamp;
			    console.log('The request took ' + (time / 1000) + ' seconds.');
			    var data = JSON.parse(response.data);			  
			   $scope.updateData(data);		
		   });
	      
	   }
}




  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值