基于 Ionic 中的 .state ID 字段的过滤器

Filter baseaded in .state ID field in Ionic

根据 .state ID 字段进行过滤。

我有这个状态:

   .state("nhaac.ofertas_restaurante", {
    url: "/ofertas_restaurante/:cadastra_oferta_cod_fornecedor",
    cache:false,
    views: {
        "nhaac-side_menus" : {
                    templateUrl:"templates/ofertas_restaurante.html",
                    controller: "restaurantePromocoesCtrl"
                },

我从 Json 文件(或对象数组)中获取 ID。

我想获取此字段 ID 并在视图中进行过滤,仅列出包含状态 ID 的寄存器:

ng-repeat="item in ofertass | filter:????????"

我该怎么做?

您可以在控制器中使用 $stateParams 获取状态 url 的动态变量。在这种情况下,它的 $stateParams.cadastra_oferta_cod_fornecedor 因为您已将状态 url 声明为 /ofertas_restaurante/:cadastra_oferta_cod_fornecedor。使用它来创建一个自定义过滤器,您可以在其中匹配 ID。

控制器

.controller('Ctrl', function($scope, $stateParams) {
  angular.extend($scope, {
    filterById: function(item) {
      return item.cadastra_oferta_cod_fornecedor === $stateParams.cadastra_oferta_cod_fornecedor;
    }
  });
});

查看

<div ng-repeat="item in ofertass | filter:filterById(item)"></div>