【问题标题】:Angular $filter not updating variable on array returned by $resourceAngular $filter 不更新 $resource 返回的数组上的变量
【发布时间】:2013-03-07 22:12:48
【问题描述】:

假设我有一个 Angular $resource,它返回一个 entries 数组,它们都有一个 name 属性。我想使用$filter in Javascriptnot在模板中使用 Angular 的 {{ blah | filter:filter }} 语法)根据属性提取这些条目的子集。 p>

代码如下所示:

app.controller('AppController', function ($scope, Project, $filter) {
    $scope.entries = Project.query();
    $scope.entry = $filter('filter')($scope.entries, {name: 'Bar'});
    ...
}

但是,正如jsFiddle here 中所示,sn-p 不会按预期工作。当 XHR 完成时,entry 将包含一个空数组,无论 entries 异步填充什么。设置$scope.$watch 也不起作用。

entries 填充数据时,我想根据过滤器更新entry。我该怎么做?

【问题讨论】:

    标签: filter angularjs xmlhttprequest angular-resource


    【解决方案1】:

    好的,当我进行更多实验并发现我可以通过向query() 调用提供success 回调来实现这一点时,我的问题已经基本完成:

    app.controller('AppController', function ($scope, Project, $filter) {
        $scope.entries = Project.query({}, function() {
            $scope.entry = $filter('filter')($scope.entries, {name: 'Bar'});
        });
        ...
    }
    

    请参阅updated jsFiddle

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-03-26
      • 2013-09-24
      • 2013-07-12
      • 1970-01-01
      • 2018-09-10
      相关资源
      最近更新 更多