Angular + Require + Angular-resources和cookies模块导致“错误:无模块:ngResource”

时间:2017-11-18 12:20:59

标签: javascript angularjs requirejs

我无法使用ngResource使用require.js我遇到的问题完全相同here

以下是我的代码:

main.js ( data-main attribute of require.js ) 

// https://groups.google.com/forum/#!topic/angular/I6CSeG0Z2Vo
require.config({
    paths: {
        'angular': '../bower_components/angular/angular',
        'angularResource': '../node_modules/angular-resource/angular-resource'
    },
    shim:{
        'angular':{
            exports: 'angular'
        },
        'angularResource':{
            deps: ['angular'],
            exports: 'angularResource'
        }
    }
});
debugger;
require(['controllers/MainCtrl']);
require(['directives/owNavigation']);
require(['directives/owFooter']);

下面是我的app.js,我正在创建我的角度应用模块。

app.js

define(['angular','angularResource'],function(angular,angularResource){
    debugger;
    var app = angular.module('app',['ngResource']);
    return {
        angularModule: app
    }
});

但是,“angularResouce”参数始终为null。我可以看到'angular'参数具有正确的值,我可以创建我的'app'模块,而不会将'ngResource'作为依赖项。

我使用的是以下版本

  • Angularjs v1.6.6
  • RequireJS 2.3.5
  • angular-resource v1.6.6

我可以在Chrome开发者工具的网络标签中看到requirejs正在加载文件“angular-resource.js”但仍然app.js模块没有将其作为参数接收。

enter image description here

以下是可在控制台上看到的错误

enter image description here

1 个答案:

答案 0 :(得分:1)

从shim angularResource删除导出:

shim:{
        'angular':{
            exports: 'angular'
        },
        'angularResource':{
            deps: ['angular']
        }
    }

它应该有效(为我工作),保持其他一切。