Javascript AngularJs,过滤器“;afoo“;但不是",;"富",;

Javascript AngularJs,过滤器“;afoo“;但不是",;"富",;,javascript,angularjs,typescript,Javascript,Angularjs,Typescript,我尝试在ng repeat中管理筛选器 Main.HTML <table> <tr ng-repeat="param in MyParam | filter: UnrequestValue"> <td>{{param.Label}}</td> </tr> </table> {{param.Label} Main.js MyParam: Array<parameter

我尝试在ng repeat中管理筛选器

Main.HTML

<table>
       <tr ng-repeat="param in MyParam | filter: UnrequestValue">
          <td>{{param.Label}}</td>
       </tr>
</table>

{{param.Label}
Main.js

MyParam: Array<parameter>;
param1: parameter;
param2: parameter;
param3: parameter;

$scope.UnrequestValue = "!foo";

$scope.param1 = "TooFoo";
$scope.param2 = "Foo";
$scope.param3 = "Too";

$scope.param1.Label = "this is TooFoo";
$scope.param2.Label = "this is Foo";
$scope.param2.Label = "this is Too";
MyParam:Array;
参数1:参数;
参数2:参数;
参数3:参数;
$scope.UnrequestValue=“!foo”;
$scope.param1=“TooFoo”;
$scope.param2=“Foo”;
$scope.param3=“太”;
$scope.param1.Label=“这是TooFoo”;
$scope.param2.Label=“这是Foo”;
$scope.param2.Label=“这太过分”;
我想打印:

  • 我是图福
  • 这太过分了
但我目前得到的结果是:

  • 这太过分了
这里我的过滤器不能正常工作。 因为我需要遵循规范,所以我不能更改标签。

有人知道如何解决这个问题吗? 它与ng if配合得很好


提前谢谢

希望这有帮助,您必须编写一个自定义过滤器,返回不匹配的值

angular.module('myApp',[]).filter('weDontLike', function(){

    return function(items, name){

        var arrayToReturn = [];        
        for (var i=0; i<items.length; i++){
            if (items[i].name != name) {
                arrayToReturn.push(items[i]);
            }
        }

        return arrayToReturn;
    };
});

function HelloCntl($scope) {
    $scope.friends = [
        {
        name: 'John',
        phone: '555-1276'},
    {
        name: 'Mary',
        phone: '800-BIG-MARY'},
    {
        name: 'Mike',
        phone: '555-4321'},
    {
        name: 'Adam',
        phone: '555-5678'},
    {
        name: 'Julie',
        phone: '555-8765'}
    ];
}
angular.module('myApp',[]).filter('weDontLike',function(){
返回函数(项目、名称){
var arrayToReturn=[];

对于(var i=0;i)您想做什么?我有一个数组,用在两个选项卡中。一次必须显示每个元素,另一个仅显示其中的一部分。