Javascript AngularJS:从过滤器中获取动态数组,然后将其用于forEach方法

Javascript AngularJS:从过滤器中获取动态数组,然后将其用于forEach方法,javascript,angularjs,arrays,Javascript,Angularjs,Arrays,我在此中有下表(尝试使用“搜索”输入) 有什么想法吗?在控制器中,您应该$watch查看findProducts,该产品由ng model修改。在$watch处理程序中,您可以更新filteredArray。在使用forEach编写的代码中状态仅在控制器初始化时运行一次,而这不是您想要的。在控制器中,您应该$watch查看findProducts,它由ng model修改。在$watch处理程序中,您可以更新filteredArray。在使用forEach编写的代码中,state在控制器初始化时

我在此中有下表(尝试使用“搜索”输入)


有什么想法吗?

在控制器中,您应该
$watch
查看
findProducts
,该产品由
ng model
修改。在
$watch
处理程序中,您可以更新
filteredArray
。在使用
forEach编写的代码中
状态仅在控制器初始化时运行一次,而这不是您想要的。

在控制器中,您应该
$watch
查看
findProducts
,它由
ng model
修改。在
$watch
处理程序中,您可以更新
filteredArray
。在使用
forEach编写的代码中,state在控制器初始化时只运行一次,这不是您想要的。

您应该使用
$scope.$watch
根据用户输入过滤控制器中的产品。然后,您将有权访问过滤后的数据集,以执行
.forEach
循环

有关如何在控制器中使用过滤器的信息,请参见。以及如何使用名为“filter”的内置过滤器

app.controller("controllerApp", function($scope, $filter){
{
    var products = [...];
    $scope.filteredProducts = products;

    $scope.$watch('findProducts', function(newVal) {
        $scope.filteredProducts = $filter('filter')(products, newVal);

        angular.forEach($scope.filteredProducts, function(value, key){
            console.log("object from filtered array: "+value)
        });
    });
}
然后使用模板中的
filteredProducts

<input type="text" name="findProducts" data-ng-model="findProducts" placeholder="search" />

<tr data-ng-repeat="product in filteredProducts">

您应该使用
$scope.$watch
根据用户输入过滤控制器中的产品。然后,您将有权访问过滤后的数据集,以执行
.forEach
循环

有关如何在控制器中使用过滤器的信息,请参见。以及如何使用名为“filter”的内置过滤器

app.controller("controllerApp", function($scope, $filter){
{
    var products = [...];
    $scope.filteredProducts = products;

    $scope.$watch('findProducts', function(newVal) {
        $scope.filteredProducts = $filter('filter')(products, newVal);

        angular.forEach($scope.filteredProducts, function(value, key){
            console.log("object from filtered array: "+value)
        });
    });
}
然后使用模板中的
filteredProducts

<input type="text" name="findProducts" data-ng-model="findProducts" placeholder="search" />

<tr data-ng-repeat="product in filteredProducts">


btw,在控制器中,您可以注入
$filter
服务并使用它而不是实现您自己的过滤器。顺便说一句,在控制器中,您可以注入
$filter
服务并使用它而不是实现您自己的过滤器。