我只是想在我当前在本地运行的java / velocity webapp中创建一个angularjs应用程序。我遇到的问题是:未捕获错误:[$ injector:modulerr]无法实例化模块... 现在只需谷歌搜索此问题它告诉我导入angular-route.js,我已经是,但似乎仍然得到这个错误。
以下是目前的情况。
<script type="text/javascript" src="/js/angular/angular.js"></script>
<script type="text/javascript" src="/js/angular/angular-route.js"></script>
这是我为我的app定义html的html / vm文件。 (这位于页面正文内)
<div ng-app="myApp">
<div ng-controller="AvengersCtrl">
<input type="text" ng-model="search.$" />
<table>
<tr ng-repeat="actor in avengers.cast | filter:search">
<td>{{actor.name}}</td>
<td>{{actor.character}}</td>
</tr>
</table>
</div>
</div>
这是我在main.js中加载的javascript
var myApp = angular.module('myApp', ['ngRoute']);
myApp.factory('Avengers', function() {
var Avengers = {};
Avengers.cast = [{
name: "Robert Downey Jr.",
character: "Tony Stark / Iron Man"
}, {
name: "Chris Evans",
character: "Steve Rogers / Captain America"
}, {
name: "Mark Buffalo",
character: "Bruce Banner / The Hulk"
}];
return Avengers;
})
function AvengersCtrl($scope, Avengers) {
$scope.avengers = Avengers;
}
对于我的生活,我无法弄清楚为什么我会继续犯这个错误。很想知道这是我现在的Java应用程序构建的问题,以及角度可能会在该环境中运行的问题?但我真的不知道。提前谢谢。
答案 0 :(得分:0)
问题可能在于您标记控制器的方式。我试试这个语法。
myApp.controller("AvengersCtrl", function($scope, Avengers) {
$scope.avengers = Avengers;
}