为什么在角度1错误拦截器中注入`$ http`会导致循环依赖?

时间:2016-09-29 18:57:36

标签: javascript angularjs angular-http-interceptors

考虑以下角度1的拦截器模板

    (function () {
        'use strict';

        angular
            .module('myApp')
            .factory('apiError', apiError);

        apiError.$inject = [
            '$q',
            '$injector',
            '$http'];

        function apiError($q,
                          $injector,
                          $http) {

        }
    })();

注入$q$injector不会遇到任何问题,但注入$http会导致循环依赖错误。

Error: $injector:cdep
Circular Dependency

我所做的修复只是使用$http内嵌

设置$injector
 var $http = $injector.get('$http');

但我有两个问题

  1. 为什么会出现循环依赖?
  2. $injector如何解决循环依赖

0 个答案:

没有答案