加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

从我的AngularJS注入器获取延迟/承诺时获取“未知提供者:$qProv

发布时间:2020-12-17 17:05:28 所属栏目:安全 来源:网络整理
导读:我正在尝试创建一个简单的示例,我从AngularJS的服务解决方案中获取promise / defer对象: var $q;function init() { var $injector = window.angular.injector(); console.log($injector); $injector.invoke(["$q",function (_$q) { console.log($q); $q = _
我正在尝试创建一个简单的示例,我从AngularJS的服务解决方案中获取promise / defer对象:

var $q;

function init() {

    var $injector = window.angular.injector();
    console.log($injector);
    $injector.invoke(["$q",function (_$q) {
        console.log($q);
        $q = _$q;
    }]);

}

init();

但它导致:

Error: Unknown provider: $qProvider <- $q
[Break On This Error]
throw Error(“Unknown provider: ” + path.join(‘ <- ‘));

我能错过什么?

解决方法

您必须添加提供程序所在的模块,如下所示:

var $injector = window.angular.injector(['ng']);

然后它会工作!

编辑:关于’ng’模块,文档明确指出必须明确添加. From the angular injector docs:

modules – {Array.<string|Function>} – A list of module functions or their aliases.
See angular.module. The ng module must be explicitly added.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读