数据保存和观察服务以更新AngularJS中的视图

时间:2013-04-25 16:55:15

标签: angularjs watch

我在客户端使用AngularJS来显示一些将通过NodeJS-Server推送的信息。数据将保存在服务工厂中。

我想通过角度监视功能观看这些数据。

我遇到的问题如下。手表只在工厂运行一次并停止。

如果服务器推送更改的数据,它将不会更新视图?

以下是一些代码段。

.factory('clientStorage', ['socket', function (socket){
    var that = {};

    //basis data
    that.basisData = {};
    that.getBasisData = function () {
        socket.on('sendBasis', function (basis) {
            console.log('ich hoffe doch');
            that.basisData = basis;
            console.log(that.basisData);
        });
        console.log(that.basisData);
        return that.basisData;
        };
    return that;
}]);

我不知道为什么会这样?

有人可以提供帮助吗?

问候

的Henrik

1 个答案:

答案 0 :(得分:2)

在你的控制器中试试这个:

$scope.$watch( function() { return clientStorage.basisData; }, function(clientData) {
    $scope.data = clientData;
});

$scope.data是您要更新的数据。