用AngularJS的时候为何我读不到service中的数据?各种抓脑袋中
刚开始学AngularJS 跟着官网的Guide照葫芦画瓢,做一个问答的应用
后端已经测试过没问题了,service也能正确获取到服务器返回的json对象
但是module为何不能读取service中的数据?
AngularJS 版本为 1.2.4
部分html代码 :
js:
this.quizlist = quizGetter.quizlist; 这样不是应该能把获取到的数据绑定到controller里了么?
为什么显示不了?
后端已经测试过没问题了,service也能正确获取到服务器返回的json对象
但是module为何不能读取service中的数据?
AngularJS 版本为 1.2.4
部分html代码 :
<div class="content" ng-app="quizapp">
<div class="quiz_container" ng-controller="QuizCtrl as ctrl">
<div class="question" ng-bind="ctrl.quizlist[ctrl.index].q">问题</div>
<div class="opt" ng-repeat="a in ctrl.quizlist[ctrl.index].a" ng-bind="a" ng-click="ctrl.check($index)">选项</div>
</div>
</div>
js:
angular.module('DataService',[])
.factory('quizGetter', ['$http', function ($http) {
var URL_PATTERN = "..."; //实际上填的是真实的地址
var quizlist = [];
getnew();
return {
quizlist:quizlist,
getnew:getnew
};
function getnew(){
var url = URL_PATTERN.
replace('ARGLIST', grouplist.join(','));//生成URL
return $http.get(url).success(function(data) {
this.quizlist = data;
console.log(this.quizlist); //获得到的数据正常显示了
}).error(function(data, status, headers, config){
console.log("Fail");
this.quizlist = []
});
}
}]);
angular.module('quizapp', ['DataService'])
.controller('QuizCtrl',['quizGetter', function(quizGetter){
this.index = 0;
this.quizlist = quizGetter.quizlist;
this.check = function(i){
console.log("i = " + i + " c = " + this.quizlist[this.index].c);
if (i == this.quizlist[this.index].c) {
console.log("correct!");
}else{
console.log("wrong!");
};
if (this.index >= this.quizlist.length - 1) {
console.log("finish");
}else{
this.index ++;
};
};
this.showlist = function(){
alert(this.quizlist)
}
}]);
this.quizlist = quizGetter.quizlist; 这样不是应该能把获取到的数据绑定到controller里了么?
为什么显示不了?
...全文
相关推荐
AngularJS服务service用法总结
主要介绍了AngularJS服务service用法,结合实例形式总结分析了服务Service的概念、功能及自定义服务的相关操作技巧,需要的朋友可以参考下
简介AngularJS中使用factory和service的方法
主要简单介绍了AngularJS中使用factory和service的方法,主要针对自定义工厂和服务的创建来讲,需要的朋友可以参考下
AngularJS入门教程之服务(Service)
本文主要介绍 AngularJS Service,这里整理了AngularJS Servic的详细资料,并提供代码实例,有需要的小伙伴可以参考下
angularJS——三种自定义service方法
angularJS中,使用自定义的service实现一个数的立方,
AngularJS之自定义服务详解(factory、service、provider)
本篇文章主要介绍了AngularJS之自定义服务详解(factory、service、provider),具有一定的参考价值,感兴趣的小伙伴们可以参考一下。


