AngularJS:错误:未知提供者
问题描述:
简单的事情 - 在jsfiddle中工作,但不在我的文件中。我试图添加一些数据到模块的“工厂”,然后在我的控制器中使用它。 这是相关代码:AngularJS:错误:未知提供者
var challengesApp = angular.module('challengesApp', []);
challengesApp.factory('Challenges', function() {
var challenges = [
{
'program': {
"num": "1",
"name": "aaa"
},
'challengeDesc': "desss",
'items': [
{title:"aaa",
desc:"bbb",
link: "www.google.com",
fiction: true},
]
}
];
return challenges;
});
function ChallengeCtrl($scope, Challenges) {
$scope.challenges = Challenges;
etc...
}
function ChallengeListCtrl($scope, Challenges) {
$scope.challenges = Challenges;
etc..
}
和HTML:
<body ng-app="challengesApp">
<div ng-controller="ChallengeCtrl">
<div id="question">
<h2>{{ challenge.challengeDesc }}</h2>
<ul>
<li ng-repeat="item in challenge.items">
<strong>{{ item.title }}</strong> - {{ item.desc }}
</li>
</ul>
</div>
</div>
<div ng-controller="ChallengeListCtrl">
<div id="programs_list">
<ul>
<li ng-repeat="program in challenges | orderBy:orderProp:reverse">
<a href="" ng-click="changeChallenge(program)">
{{ program.program.num }} - {{ program.program.name }}
</a>
</li>
</ul>
</div>
</div>
<script src="js/main.js"></script>
</body>
东西在这里,我失踪?
答
所以,正如我怀疑的那样,这是一个愚蠢的错误。在<html>
标签是:
<html ng-app>
在<body>
标签挡住了正确ng-app
属性。
您是否有任何机会在您的目标应用程序中减少文件?如果不是,你可能只是缺少'ng-app ='challengesApp''?很难说更多没有看到现场代码... – 2013-02-10 15:42:04
@ pkozlowski.opensource,你可以从我的代码中看到 - 正确的身体标签:
所以这不是问题。并且我不会缩小... – SnirD 2013-02-10 16:02:50在这种情况下,将很难提供更多帮助,因为您发布的代码在plunker中可以正常工作:http://plnkr.co/edit/RWJqbJ2EOu0FgCpqnxiz?p=preview The只有在JSON数据结束时才会有一些额外的逗号。您最终可以检查http://stackoverflow.com/q/12339272/1418796 – 2013-02-10 16:22:38