$ injector nomod Module' angularFileUpload'不可用

时间:2014-07-03 04:06:24

标签: angularjs heroku bower mean.io angular-file-upload

我目前正在使用mean.io堆栈进行个人项目,一切都在本地运行顺利。我试图部署到Heroku,我遇到一个模块没有正确实例化的问题!我在Stack Overflow上找到了类似的问题,但没有一个答案适合我。

这是我的错误:

错误:[$ injector:modulerr]由于以下原因无法实例化模块均值: [$ injector:modulerr]由于以下原因无法实例化angularFileUpload模块: [$ injector:nomod]模块'angularFileUpload'不可用!您要么错误拼写了模块名称,要么忘记加载它。如果注册模块,请确保将依赖项指定为第二个参数。 (dist.min.js)

好像我的模块没有加载。但根据日志,它正确安装:

  

mean@0.3.3 postinstall / tmp / build_5d155aeb-14b5-4414-af19-986a68df3b19   node node_modules / bower / bin / bower install

     

bower ng-file-upload-shim#* not-cached git://github.com/danialfarid/angular-file-upload-shim-bower.git#*

     

bower ng-file-upload-shim#* resolve git://github.com/danialfarid/angular-file-upload-shim-bower.git#*

     

bower angular#* not-cached git://github.com/angular/bower-angular.git#*   bower angular#* resolve git://github.com/angular/bower-angular.git#*   ...   bower ng-file-upload#* not-cached git://github.com/danialfarid/angular-file-> upload-bower.git#*

     

bower ng-file-upload#*解决git://github.com/danialfarid/angular-file-> upload-bower.git#*

     

...

     

bower ng-file-upload-shim#* install ng-file-upload-shim#1.4.0

     

bower ng-file-upload#* install ng-file-upload#1.4.0

     

...

     

bower angular#1.2.19安装角度#1.2.19

     

...

     

完成,没有错误。

注意:Danial Farid的angularFileUpload要求在angular之前加载shim.js文件,然后在angularFileUpload之前加载。看起来像之后安装了角度,这会有问题吗?

这是我的模块,我声明了依赖:

angular.module('mean.thingy', ['angularFileUpload','ngAnimate']).controller(...

最后,我的assets.json:

"js": {
            "public/build/js/dist.min.js": [
            "public/system/lib/jquery/dist/jquery.min.js",
            "public/system/lib/angular-file-upload-master/dist/angular-file-upload-shim.js",
            "public/system/lib/angular/angular.js",
            ...
            "public/system/lib/angular-file-upload-master/dist/angular-file-upload.js",
            "public/init.js",
            "public/*/*.js",
            "public/*/{controllers,routes,services}/*.js"
            ]
        }

我很感激您的任何帮助或预感!谢谢!

4 个答案:

答案 0 :(得分:4)

我得到了同样的错误,并通过将文件路径添加到karma.conf.js

来解决

答案 1 :(得分:1)

我有同样的问题,我使用mean.js而不是mean.io所以可能会略有不同。

当你问到&#34时,你走在正确的轨道上;看起来像之后安装了角度,这会有问题吗?"我相信。

要解决此问题,请确保在 production.js 配置中按顺序放置脚本以及 all.js ,例如

            'public/lib/ng-file-upload/FileAPI.min.js', 
            'public/lib/ng-file-upload/angular-file-upload-shim.min.js',
            'public/lib/angular/angular.js',
            'public/lib/ng-file-upload/angular-file-upload.min.js',

答案 2 :(得分:1)

将您的上传相关性声明更改为:

angular.module(&#39; mean.thingy&#39;,[&#39; ngFileUpload &#39;,&#39; ngAnimate&#39;])... < / p>

答案 3 :(得分:0)

在我的情况下,这是因为我的本地副本angular-file-upload-shim.min.js和angular-file-upload.min.js已损坏(我没有使用bower获取它们。)

尝试从作者的github页面下载原始.js文件:https://github.com/danialfarid/angular-file-upload/tree/master/dist,单击该文件,单击“Raw”,然后将您的JS文件指向这些文件的本地副本。