我有JSON
数组看起来像这样
{
"-K3OFVYXVUiT-oYXFmgX": {
"id": 4658,
"username": "shamon"
},
"-K3OFZAt9Qyy9v6z-XYQ": {
"id": 9891,
"username": "manu"
},
"-K3OFafyCi6g9UhdR2mA": {
"id": 7219,
"username": "hari"
},
"-K3OGYGGry3pU8_Qkjg_": {
"id": 8028,
"username": "shamonsha"
}
}
我想在<ul>
列表中显示用户名
<ul>
<li ng-repeat="user in userlist">{{user.username}}</li>
<ul>
但我会得到空的结果
更新
这是我的完整代码,它是一个响应表单的firebase网址,问题是我会得到console.log($scope.userlist)
但它不会在html列表中更新
.controller('chatCtrl',function($scope){
messagesRef= new Firebase(chaturl+'userlist');
messagesRef.on('value', function (snapshot) {
var msg= snapshot.val();
$scope.userlist=JSON.stringify(msg);
console.log($scope.userlist);
});
});
答案 0 :(得分:1)
您可以使用(key, value) in expression
<ul>
<li ng-repeat="(key, value) in userlist">
{{value.username}}
</li>
<ul>
编辑:需要使用$scope.$apply(fn)
以便更新更改。
.controller('chatCtrl',function($scope){
messagesRef= new Firebase(chaturl+'userlist');
messagesRef.on('value', function (snapshot) {
var msg= snapshot.val();
$scope.$apply(function () {
$scope.userlist=JSON.stringify(msg);
});
});
});