Angular 4 получает значение ввода из текстового поля на японском вводе - PullRequest
0 голосов
/ 08 мая 2018

Я использую событие ввода, которое вызывается при вводе любой клавиши в текстовом поле. но это работа для клавиатуры Romanji, когда я использую японский ввод, он не обнаруживает первое вводимое мной буквенное событие, затем нажимает Enter. Когда я ввожу вторую букву (на японском), она получает обе буквы. Извините, что так сложно описать. Просто изображение, когда я ввожу あ, оно не может быть обнаружено, но я пытаюсь ввести еще одну букву detected, он обнаружил 2 буквы. Я попытался (вход), (изменить) событие, но тот же результат Помогите мне, пожалуйста. Спасибо.

это HTML код

<input [(ngModel)]="strAutoSearch" class="p-search__text-area" type="text" name="word" (input)="searchAuto(strAutoSearch)">

это функция файла .ts

strAutoSearch: string;
searchAuto(searchValue: string) {
    if (this.strAutoSearch == null || this.strAutoSearch.trim() == "") {
      this.strAutoSearch = "";
      this.result= [];
      return;
    }
    this.listService.searchService(this.strAutoSearch.trim())
      .subscribe(
        result => {
          this.result= result;
        },
        e => this.helpers.handleErrors(e.error)
      );
  }

1 Ответ

0 голосов
/ 08 мая 2018

Вы пробовали с HostListener. Это должно перехватить все события клавиатуры.

import { HostListener } from '@angular/core';

@HostListener('keydown', ['$event'])
    handleKeyboardEvent(event: KeyboardEvent) {
            console.log(event.keyCode) ; 
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...