我使用选项卡模板,其中包含聊天和聊天详细信息列表。我已将数据放入json文件中,并在我的代码中添加如下:$ http.get(" http://abcd/Chats.json")。 数据显示在聊天列表中,但它不在详细信息页面上工作。 我已经测试了很多解决方案,但我仍然遇到错误...
这是我的代码:
SERVICE
angular.module('starter.services', [])
.factory('Chats', function($http) {
// Might use a resource here that returns a JSON array
return {
getChats: function() {
return $http.get("http://abcd/Chats.json").success(function(response){
chats=response;
return chats;
});
},
get: function(chatId) {
for (var i = 0; i < chats.length; i++) {
if (chats[i].id === parseInt(chatId)) {
return chats[i];
}
}
return null;
}
};
});
CONTROLLER
.controller('ChatsCtrl', function($scope, Chats) {
Chats.getChats().success(function(response){
$scope.chats =response;
});
})
.controller('ChatDetailCtrl', function($scope, $stateParams, Chats) {
$scope.chat = Chats.get($stateParams.chatId);
} )
我的错误是:无法读取聊天属性未定义.. 有什么帮助吗?
答案 0 :(得分:0)
尝试将chats
定义为工厂内的var。
.factory('Chats', function($http) {
var chats;
...