首页 > 解决方案 > 在 Windows 应用程序中按退格键触发离子搜索栏错误事件

问题描述

当在搜索栏中按下退格键时,在用户停止清除文本之前调用 onInput() 方法。只有当用户停止清除文本时,才能忽略此调用并继续执行操作

<ion-searchbar #mainSearchbar [(ngModel)]="searchText" (ionInput)="onInput($event)"></ion-searchbar>

标签: ionic3

解决方案


我找到了解决此问题的方法。而不是使用 ionInput 我正在收听按键事件。

  handleSearchDown() {
    clearTimeout(this.timeout)
  }

  handleSearchUp() {
    clearTimeout(this.timeout)
    this.getItems();
  }

  getItems() {
    var that = this;
    clearTimeout(this.timeout)
    this.timeout = setTimeout(function () {
      that.searchList(that.searchText);
    }, 1000);
  }
  
  clearTimeout() {
    clearTimeout(this.timeout)
  }
<ion-searchbar [(ngModel)]="searchText" (keyup)="handleSearchUp()" (keydown)="handleSearchDown()" (ionClear)="clearTimeout()"></ion-searchbar>


推荐阅读