Angularjs MongoDB集合长度更改时动态更新角度视图

Angularjs MongoDB集合长度更改时动态更新角度视图,angularjs,mongodb,Angularjs,Mongodb,我只是想知道Mongo DB中数据库集合的变化。我有一个变量跟踪MongoDB集合中的项目数量,我希望前端视图在从前端向集合添加新项目时立即插入该数量。这可能吗 例如: var Item = $resource('/api/items'), allItems = Item.query(function(results) { return results; }); $scope.allTodos = allItems.length; 前端: <p ng-s

我只是想知道Mongo DB中数据库集合的变化。我有一个变量跟踪MongoDB集合中的项目数量,我希望前端视图在从前端向集合添加新项目时立即插入该数量。这可能吗

例如:

var Item = $resource('/api/items'),
    allItems = Item.query(function(results) {
        return results;
    });

$scope.allTodos = allItems.length;
前端:

<p ng-show="allTodos > 0">Total Items: {{allTodos}}</p>

这在有角度的情况下是可能的吗?我肯定是的,所以请原谅我的绿色。谢谢

$resource.query
立即返回一个空对象。所以
allItems
并不是你所期望的。操作完成后,
allItems
将填充数据。不需要从回调返回任何内容

一种方法是在回调中设置
alltodo

Item.query(function(results) {
        $scope.allTodos = results.length;
    });
或者完全消除额外变量
所有TODO
,使项目在模板中可见(应该是控制器
$scope
的一部分)

和html格式

<p ng-show="allItems.length > 0">Total Items: {{allItems.length}}</p>

项目总数:{{allItems.length}


$resource.query
立即返回一个空对象。所以
allItems
并不是你所期望的。操作完成后,
allItems
将填充数据。不需要从回调返回任何内容

一种方法是在回调中设置
alltodo

Item.query(function(results) {
        $scope.allTodos = results.length;
    });
或者完全消除额外变量
所有TODO
,使项目在模板中可见(应该是控制器
$scope
的一部分)

和html格式

<p ng-show="allItems.length > 0">Total Items: {{allItems.length}}</p>

项目总数:{{allItems.length}


谢谢你,基里尔!我把代码修改了一点。但是,当我向数据库提交新项目时,这仍然不会更新视图中的数字(长度)。我必须刷新页面才能更改。我想知道这个数字是否会在添加一个项目后立即更新,即:我的收藏长度更改了,但是allItems.length属性在我手动刷新页面之前保持不变。嗯,也许你把事情弄糊涂了
Backbone.collection
您在客户端提到了it数据。http请求从服务器获取数据。所以,如果希望客户端“实时”刷新服务器数据,就必须执行自己的轮询机制。如果您正在寻找实时数据库,它可以主动通知客户有关更改的信息,请查看Thank Kirill!我把代码修改了一点。但是,当我向数据库提交新项目时,这仍然不会更新视图中的数字(长度)。我必须刷新页面才能更改。我想知道这个数字是否会在添加一个项目后立即更新,即:我的收藏长度更改了,但是allItems.length属性在我手动刷新页面之前保持不变。嗯,也许你把事情弄糊涂了
Backbone.collection
您在客户端提到了it数据。http请求从服务器获取数据。所以,如果希望客户端“实时”刷新服务器数据,就必须执行自己的轮询机制。如果您正在寻找实时数据库,它可以主动通知客户有关更改的信息,请查看