2017-04-02 4 views
0

이제는 다음과 같이 작동합니다. "a", "ang", "angu", "angul", "angula", "angular"

사용자가 입력 영역에서 이미 입력을 중지하면 값을 얻는 방법 ?

예 : 사용자가 입력을 중단하면 "각도"가 표시됩니다.

어떤 아이디어가 있습니까?

+0

도움이 될 것입니다 희망 나는 당신이 요구하는 것은 불가능하다고 생각합니다. 방금 Google을 확인하고 코드와 같은 모든 문자를 요청합니다. –

+0

사용중인 이벤트가 keyup입니다 (각 스트로크에서 이벤트를 발생 시키도록 컨트롤에 요청). – user2526236

+0

(변경) = "getSearch ($ event, value)"를 시도 할 수 있습니까? 그것은 도움이 될 수도 있습니다 –

답변

1

시도해 볼 수 있습니다 (keyup.enter) = "getSearch ($ event, value)"입력 후 Enter 키를 누르면 호출됩니다.

나는 귀하의 경우에 효과가 있다고 생각되는 또 하나의 방법이 있습니다. 당신은 이것에 대해 관찰 할 수있는 폼 필드를 사용하고 변경을 감지 할 수 있습니다. & 관찰 가능 함수를 적용합니다. 이 코드를 확인하십시오. 당신의 필요

<form [formGroup]="coolForm"> 
    <input formControlName="search" placeholder="Search artist"> 
    </form> 

구성 요소 코드

export class AppComponent { 
    searchField: FormControl; 
    coolForm: FormGroup; 

    constructor(private searchService:SearchService, private fb:FormBuilder) { 
     this.searchField = new FormControl(); 
     this.coolForm = fb.group({search: this.searchField}); 

     this.searchField.valueChanges 
      .debounceTime(400) 
      .switchMap(term => this.searchService.search(term)) 
      .subscribe((result) => { 
       ////// 
      }); 
    } 

에 따라 수정 난이 :