Bagaimana untuk Melaksanakan Debouncing dalam Angular 2?

Patricia Arquette
Lepaskan: 2024-10-23 10:32:01
asal
554 orang telah melayarinya

How to Implement Debouncing in Angular 2 ?

Angular 2 Debouncing

Debouncing ialah teknik yang digunakan dalam pengaturcaraan untuk menangguhkan pelaksanaan tugas sehingga tempoh masa tertentu telah berlalu sejak panggilan terbaharu untuk tugas itu. Dalam Angular, nyahlantun boleh digunakan untuk meningkatkan prestasi aplikasi anda dengan mengurangkan bilangan kali aplikasi anda melakukan operasi yang mahal.

Dalam AngularJS, nyahlantun dikendalikan menggunakan arahan ng-model-options. Walau bagaimanapun, dalam Angular 2 , tiada fungsi nyahlantun terbina dalam. Sebaliknya, anda boleh menggunakan operator RxJS debounceTime() pada valueChanges yang boleh diperhatikan bagi kawalan borang.

Berikut ialah contoh cara untuk menyahlantun kawalan borang dalam Angular 2 :

<code class="typescript">import {Component}   from '@angular/core';
import {FormControl} from '@angular/forms';
import {Observable}  from 'rxjs/Observable';
import 'rxjs/add/operator/debounceTime';

@Component({
  selector: 'my-app',
  template: `<input type=text [value]="firstName" [formControl]="firstNameControl">
    <br>{{firstName}}`
})
export class AppComponent {
  firstName        = 'Name';
  firstNameControl = new FormControl();

  ngOnInit() {
    this.firstNameControl.valueChanges
      .debounceTime(1000)
      .subscribe(newValue => this.firstName = newValue);
  }
}</code>
Salin selepas log masuk

Dalam contoh ini, kami mula-mula mencipta FormControl baharu bernama firstNameControl. Kemudian, kami melanggan valueChanges yang boleh diperhatikan bagi kawalan borang. Kami menggunakan operator debounceTime() untuk menangguhkan pelaksanaan fungsi panggil balik sehingga 1000 milisaat telah berlalu sejak kali terakhir nilai input berubah.

Operator debounceTime() hanyalah salah satu daripada banyak operator RxJS yang boleh digunakan untuk memanipulasi dan menapis yang boleh diperhatikan. Untuk mendapatkan maklumat lanjut tentang pengendali RxJS, sila rujuk dokumentasi RxJS.

Atas ialah kandungan terperinci Bagaimana untuk Melaksanakan Debouncing dalam Angular 2?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!