2016-04-25 16 views
0

我有一個開發的web應用程序,它使用HTML + Javascript(Angular 1.5.0)+ CSS的前端。當我在本地主機上運行它時,網站性能很好。我有一個/index.html文件。這個文件導入我的javascript代碼是這樣的:<script src="/app/app.js"></script>爲什麼我的Javascript正常運行正常,但是被分化了,不會呢?

但現在我剛剛實現了使用Grunt的自動化linting,uglifying等。 Grunt非常好地將我的單個Javascript文件(/app/app.cs)轉換爲minnified(/dist/js/app.min.js)。我改變了我的/index.html以包括minnified Javascript:<script src="/dist/js/app.min.js"></script>。但現在應用程序停止工作。並在瀏覽器的開發者控制檯中,我看到了以下錯誤:

angular.js:68 Uncaught Error: [$injector:modulerr] Failed to instantiate module myApp due to: 
Error: [$injector:unpr] Unknown provider: a 
http://errors.angularjs.org/1.5.0/$injector/unpr?p0=a 
    at http://127.0.0.1:8080/bower_components/angular/angular.js:68:12 
    at http://127.0.0.1:8080/bower_components/angular/angular.js:4397:19 
    at getService (http://127.0.0.1:8080/bower_components/angular/angular.js:4550:39) 
    at injectionArgs (http://127.0.0.1:8080/bower_components/angular/angular.js:4574:58) 
    at Object.invoke (http://127.0.0.1:8080/bower_components/angular/angular.js:4596:18) 
    at runInvokeQueue (http://127.0.0.1:8080/bower_components/angular/angular.js:4497:35) 
    at http://127.0.0.1:8080/bower_components/angular/angular.js:4506:11 
    at forEach (http://127.0.0.1:8080/bower_components/angular/angular.js:321:20) 
    at loadModules (http://127.0.0.1:8080/bower_components/angular/angular.js:4487:5) 
    at createInjector (http://127.0.0.1:8080/bower_components/angular/angular.js:4409:19) 
http://errors.angularjs.org/1.5.0/$injector/modulerr?p0=raptorApp&p1=Error%…F%2F127.0.0.1%3A8080%2Fbower_components%2Fangular%2Fangular.js%3A4409%3A19) 

爲什麼正常的JavaScript文件做工精細,但一個由步兵不會精縮?我該如何解決它?

+0

在minnifying之前使用grunt-ng-annotate爲我工作。謝謝! https://www.npmjs.com/package/grunt-ng-annotate –

回答

6

您的角度組件正在縮小,無法知道要注入什麼服務。你應該裝飾你的控制器和其他部分,以使Angular能夠正常工作。在此處閱讀:Angularjs minify best practice

+0

在minnifying之前使用grunt-ng-annotate爲我工作。謝謝! https://www.npmjs.com/package/grunt-ng-annotate –

相關問題