私は Liferay ポートレットを開発し、AngularJS を slient 側に使用しています。コントローラーで$scopeなどのサービス インジェクションを使用すると、次のエラーが発生します。
エラー: 不明なプロバイダー: aProvider <- a
コード例:-
<script>
function PayrollCalcCtrl($scope){
}
</script>
$scopeを削除すると、エラーは発生しません。この状況を回避するための回避策。
JS オプティマイザー/難読化ツールが依存関係をいじっています。DI docsを見てください。
$inject または inline アノテーションでコントローラーを定義する必要があります。
var MyController = function(myScope) {
...
}
MyController.$inject = ['$scope'];
また
app.controller('MyCtrl', ['$scope', function($scope) {
...;
}]);