【发布时间】:2017-04-22 14:39:01
【问题描述】:
我正在使用 yeoman 生成器来使用 requirejs 构建 Angular Web 应用程序。它工作正常,但是当我尝试通过 grunt 任务运行程序将所有 js 文件合并并缩小到一个文件中时,它开始给我上面提到的错误。我已经在网上研究过这个问题,常见的解决方案是我可能拼错了模块中的任何服务注入或服务不存在,我再次交叉检查了所有的拼写、引号等一切似乎都很好但我仍然'我无法解决这个问题。
这是我的 app.js 文件,其中列出了我的主要模块与依赖项。
return angular
.module('arteciateYeomanApp', [
'arteciateYeomanApp.controllers.MainCtrl',
'arteciateYeomanApp.controllers.AboutCtrl',
'arteciateYeomanApp.services.Xhr',
'arteciateYeomanApp.services.Common',
'arteciateYeomanApp.controllers.ArtworkCtrl',
'arteciateYeomanApp.controllers.AddAccountCtrl',
'arteciateYeomanApp.controllers.AddArtgroupCtrl',
'arteciateYeomanApp.controllers.AddArtistCtrl',
'arteciateYeomanApp.controllers.AddArtworkCtrl',
'arteciateYeomanApp.controllers.AddCampaignsCtrl',
'arteciateYeomanApp.controllers.AddGenreCtrl',
'arteciateYeomanApp.controllers.AddInstitutionCtrl',
'arteciateYeomanApp.controllers.AdminSignupCtrl',
'arteciateYeomanApp.controllers.ArtistInfoCtrl',
'arteciateYeomanApp.controllers.DirectUserSignupCtrl',
'arteciateYeomanApp.controllers.ErrorCtrl',
'arteciateYeomanApp.controllers.ForgotPasswordCtrl',
'arteciateYeomanApp.controllers.GroupBuyingCtrl',
'arteciateYeomanApp.controllers.LoginCtrl',
'arteciateYeomanApp.controllers.AdminLoginCtrl',
'arteciateYeomanApp.controllers.ResetPasswordCtrl',
'arteciateYeomanApp.controllers.SignupCtrl',
'arteciateYeomanApp.controllers.UnblockUserCtrl',
'arteciateYeomanApp.controllers.UpdatePasswordCtrl',
'arteciateYeomanApp.controllers.DashboardCtrl',
'ngRoute','ngResource']).config(.....);
这是我正在运行的用于缩小 js 文件的 grunt 任务。
注册任务
grunt.registerTask('dev', ['requirejs' ]);
这里是任务运行脚本
requirejs : {
compile : {
options : {
baseUrl : "<%= yeoman.app %>/scripts",
mainConfigFile : "<%= yeoman.app %>/scripts/main.js",
name : "main",
out : "requireArterciate.js"
}
}
}
如果我在这里做错了什么,请告诉我。
【问题讨论】:
-
不可能说出什么是 e。错误消息包含调用堆栈,这可能有助于找出导致错误的服务,但问题中省略了它。这个问题很可能是由于应用程序没有准备好进行缩小,因为服务没有正确注释。使用docs.angularjs.org/guide/di#using-strict-dependency-injection
标签: angularjs gruntjs yeoman-generator