Angularjs ng-repeat过滤器在v1.0.1中工作,而不是v1.3.7

Angularjs ng-repeat filter works in v1.0.1 not v1.3.7

本文关键字:v1 工作 过滤器 ng-repeat Angularjs      更新时间:2023-09-26

在这个例子中 http://plnkr.co/edit/blAbw9eKiUpJWxSvHtmj?p=preview

<html ng-app="Testing">
  <head>
    <meta charset="utf-8" />
    <script data-require="angular.js@1.3.7" data-semver="1.3.7" src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.3.7/angular.js"></script>
   <!-- <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.0.1/angular.js"></script> -->
    <script src="script.js"></script>
  </head>
  <body ng-controller="TestContr">
Search in contacts:     <input ng-model="filterQuery" />
    <br />
    <br />
    <ul ng-repeat="md in mydata | filter:filterQuery">
      <li>{{md.company}} ({{md.city}} || {{md.customer_id}})
            <ul ng-repeat="sub in md.contacts | filter:filterQuery">
          <li>{{sub.name}} ({{sub.phone}})</li>
        </ul>
      </li>
    </ul>
  </body>
</html>
var app = angular.module('Testing', []);
app.controller('TestContr', function($scope) {
  $scope.mydata = [
  {
        "company":"Test Company",
        "city":"New York",
        "customer_id":"123",
        "contacts":[
            {
                "phone":"0129385439",
                "name":"Frank"
            },
            {
                "phone":"0129385444",
                "name":"Mary"
            }
        ]
    },
    {
        "company":"Example Ltd.",
        "city":"Tokyo",
        "customer_id":"353",
        "contacts":[
            {
                "phone":"0081123456879",
                "name":"Matsumoto"
            }
        ]
    },
    {
        "company":"B.I.G. Inc.",
        "city":"Dehli",
        "customer_id":"763",
        "contacts":[
            {
                "phone":"00454621011",
                "name":"John"
            },
            {
                "phone":"00454621077",
                "name":"Franky"
            },
            {
                "phone":"00454621015",
                "name":"Marc"
            },
            {
                "phone":"00454621001",
                "name":"Anna"
            }
        ]
    }
];
});

我正在尝试过滤数据列表及其子列表数据。 我注意到如果我尝试在 Angular v1.0.1 中搜索"Anna",但它可以按预期工作,但在 Angular v1.3.7 中没有。(取消注释示例中的 1.0.1 版本脚本标记以查看其按预期工作)

我的问题是,使用 Angular v1.3.7 时,页面上需要更改什么才能像在 Angular v1.0.1 中一样正确过滤?

你能使用 1.3.8 吗?它按您的预期工作。

请参阅以下 plunk: http://plnkr.co/edit/l70aA2Q2OYrVwhZB41Qr?p=preview

<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.3.8/angular.min.js"></script>