1

我已经开发了一个 Liferay portlet 并使用 AngularJS 来实现。通过在控制器中使用诸如$scope之类的服务注入将产生以下错误:-

错误:未知提供者:aProvider <- a

示例代码:-

<script>
function PayrollCalcCtrl($scope){
}
</script>

如果$scope被删除,则不会发生错误。避免这种情况的任何解决方法。

4

1 回答 1

2

你的 JS 优化器/混淆器弄乱了你的依赖。看看DI 文档

您需要在 $inject 或内联注释中定义您的控制器:

var MyController = function(myScope) {
  ...
}
MyController.$inject = ['$scope'];

或者

app.controller('MyCtrl', ['$scope', function($scope) {
  ...;
}]);
于 2013-03-12T15:54:43.927 回答