我有一个不起作用的工厂:
toDoListApp.factory("blahFactory", function($http) {
return {
getChores : function() {
return $http({
url: '/chore.json',
method: 'GET'
})
}
}
});
包含数据的chore.json
文件:
{"name":"laundry","hours":"3"},{"name":"dishes","hours":"0.5"},{"name":"blah","hours":"1.5"}
我的控制器使用这个工厂,但在那条线上打破了:
toDoListApp.controller("ChoresController", function($scope, choresFactory, blahFactory) {
blahFactory.getChores().success(function(data) {
$scope.blah = data;
console.log(data);
});
....
我的firebug控制台中的跟踪不是很具描述性:Error: JSON.parse: unexpected non-whitespace character after JSON data
+一堆没有意义的角度垃圾。谁能帮忙解释一下?我的JSON无效吗?
=== 更新 ===
好的,所以我试图将数组括号放入json文件并修改我工厂中的$ http.get函数以使用cache: false
但它仍然不会更新我的json,因为它已缓存..
=== 答案 ===
所以我删除了chrome的缓存并添加了数组括号,一切正常!
答案 0 :(得分:3)
您的JSON不正确。你只有三个对象彼此相邻,而是将它们放在这样的数组中。
[
{"name":"laundry","hours":"3"},
{"name":"dishes","hours":"0.5"},
{"name":"blah","hours":"1.5"}
]
其他一切看起来都很棒。