永远运行sail.js+angularjs项目得到未知提供者:a

forever run sail.js + angularjs project gets Unknown provider: a

本文关键字:未知 提供者 运行 sail js+angularjs 项目 永远      更新时间:2023-09-26

我有一个sail.js项目,我使用的是angularjs。每当我尝试运行该项目时,它都是以开发模式运行的,比如:sails lift。但是如果我在生产模式下运行sails lift --prod。我得到这个错误:

Uncaught Error: [$injector:modulerr] Failed to instantiate module cineApp due to:
Error: [$injector:unpr] Unknown provider: a
http://errors.angularjs.org/1.4.7/$injector/unpr?p0=a
    at http://localhost:1337/min/production.min.js:3:6452
    at http://localhost:1337/min/production.min.js:3:25864
    at d (http://localhost:1337/min/production.min.js:3:25034)
    at Object.e [as invoke] (http://localhost:1337/min/production.min.js:3:25371)
    at d (http://localhost:1337/min/production.min.js:3:24422)
    at http://localhost:1337/min/production.min.js:3:24546
    at f (http://localhost:1337/min/production.min.js:3:6859)
    at n (http://localhost:1337/min/production.min.js:3:24323)
    at $a (http://localhost:1337/min/production.min.js:3:26013)
    at h (http://localhost:1337/min/production.min.js:3:13536)
http://errors.angularjs.org/1.4.7/$injector/modulerr?p0=cineApp&p1=Error%3A…tp%3A%2F%2Ffl.limijiaoyin.com%3A1337%2Fmin%2Fproduction.min.js%3A3%3A13536)

我在位于assets/js/app.js.的app.js中定义了angular应用程序

var cineApp = angular.module('cineApp', ['ngRoute', 'ui.bootstrap']);

那么,为什么angularjs在开发模式下运行时有效,而在生产模式下无效呢。

a可能是某种东西的缩小形式。如果你缩小代码,并且没有用以下两种方式之一正确地注释注入的函数,就会发生这种情况:

['$http', '$timeout', function($http, $timeout) {
  ...
}]
function myFun($http, $timeout) {
};
myFun.$inject = ['$http', '$timeout'];