【问题标题】:AngularJS: Error: $q is not definedAngularJS:错误:$q 未定义
【发布时间】:2017-05-03 05:21:36
【问题描述】:

我想在我的 angularjs 控制器中做出承诺。我从Angularjs Doc 中获取示例并将其粘贴到我的控制器中。当我尝试运行代码时,控制台会打印:

Error: $q is not defined

为什么会出现这个错误,我该如何解决?

我试图用谷歌搜索这个问题,但大多数问题都围绕着比我更具体的问题。

(german) guide 告诉我,promise 已经在 Angular js 中实现了,不需要添加任何东西。

编辑:

这是我的控制器:

app.controller("ArgumentationController", [
    '$scope', '$resource',
    function($scope, $resource) {

编辑2: 一位评论员建议注入 $q。我这样做了:

app.controller("ArgumentationController", [
    '$scope', '$resource', '$q',
    function($scope, $resource, $q) {

现在,错误不会发生。

【问题讨论】:

  • 你在控制器中注入了 $q 吗?

标签: angularjs frontend web-frontend


【解决方案1】:

根据您过去的代码,您的代码中不需要$resource。而是在其中注入$q。 当您使用$q 创建一个虚拟承诺时,请进行以下更改。

 app.controller("ArgumentationController", [
        '$scope', '$q',
        function($scope, $q) {

【讨论】:

    猜你喜欢
    • 2014-04-18
    • 1970-01-01
    • 2016-11-03
    • 1970-01-01
    • 1970-01-01
    • 2017-09-09
    • 1970-01-01
    • 1970-01-01
    • 2015-10-08
    相关资源
    最近更新 更多