繁体   English   中英

AngularJS / Firebase:$scope 数据未在视图中呈现

[英]AngularJS / Firebase : $scope data not rendering in view

我想显示一些存储在 Firebase 数据库中的数据。 我将数据放入范围没有问题,但没有向用户显示。

    var ref = new Firebase('https://URL.firebaseio.com/users');

    $scope.users = [];

    ref.once("value", function(snapshot) {
        snapshot.forEach(function(childSnapshot) {
            var dataUser = childSnapshot.val()
            dataUser.id = childSnapshot.key()
            $scope.users.push(dataUser);
        });
    });

ng-inspector Chrome 扩展确实确认数据已加载到范围中。

在此处输入图片说明

我错过了什么?

谢谢。

在对$scope进行异步更改时,诸如$http$setTimeout自动为您调用$apply()方法,以便更新 DOM。 你需要调用$scope.$apply(); 触发$digest循环。

你可以这样做:

var ref = new Firebase('https://URL.firebaseio.com/users');

$scope.users = [];

ref.once("value", function(snapshot) {
    snapshot.forEach(function(childSnapshot) {
        var dataUser = childSnapshot.val()
        dataUser.id = childSnapshot.key()
        $scope.users.push(dataUser);
    });
    $scope.$apply(); //let angular know to trigger $digest loop to update the DOM.
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM