首页 > 解决方案 > Angular2搜索栏无法在移动设备上运行

问题描述

我的 Angular2 前端(在 .Net 后端)有几个搜索栏来过滤对象数组。它在桌面上正常工作,甚至在 DevTools 中将设备更改为移动设备时也是如此。但是,当我发布我的应用程序并尝试使用手机上的搜索栏时,它不起作用,并且数组在视图中消失了。

我的 HTML:

<input class="form-control" type="text" placeholder="Search" [(ngModel)]="searchTerm">
<button class="btn btn-fs-orange btn-sm p-1 m-2" (click)="searchNames()">Search</button>

我的打字稿:

searchTerm: string;

searchValues: SearchValue[];
allSeearchValues: SearchValue[];

searchNames(){
        let value = this.searchTerm;
        this.searchValues = this.allSearchValues.filter((val) => val.searchName.toLowerCase().includes(value));
    }

我最初有由 (input) 触发的功能,然后尝试 (keyup),但都没有奏效。然后我认为搜索按钮可以解决问题,但它仍然不起作用。我特别沮丧,因为我必须先发布我的应用程序才能测试更改是否有效。

标签: angulartypescript

解决方案


在我的函数中,我在搜索栏中的值上缺少 .toLowerCase() 。下雪了:

this.searchValues = this.allSearchValues.filter((val) => val.searchName.toLowerCase().includes(value.toLowerCase()));

推荐阅读