Saya baru sahaja mendapati bahawa kita boleh membina URL parameter rentetan pertanyaan menggunakan "queryParams" dan HttpParams - berikut ialah contoh
goProducts() { this.router.navigate( ['/products'], { queryParams: { 'pageNumber': {page}, 'price-range': {itemsPerPage} } } ); }
let params = new HttpParams(); params = params.append('pageNumber', page); params = params.append('pageSize', itemsPerPage);
Kaedah mana yang terbaik? Cuba mencari perbezaan tetapi saya tidak dapat mencari banyak maklumat dari internet.
Cuba cari perbezaannya.
Kedua-dua kaedah - menggunakan queryParams dan HttpParams - boleh digunakan untuk membina URL dengan parameter pertanyaan. Walau bagaimanapun, terdapat beberapa perbezaan antara kedua-dua kaedah.
KaedahqueryParams digunakan dengan modul Angular Router untuk membina URL yang mengandungi parameter pertanyaan. Ini ialah kaedah mudah untuk membina URL yang boleh digunakan dengan arahan RouterLink atau kaedah navigasi modul Router. Pendekatan ini lebih sesuai untuk navigasi dalam aplikasi Sudut.
Sebaliknya, kaedah HttpParams digunakan untuk membina URL yang boleh digunakan untuk membuat permintaan HTTP. Ia adalah sebahagian daripada modul HttpClient Angular. Kaedah ini lebih sesuai untuk membuat permintaan HTTP kepada pelayan luaran.
Kedua-dua kaedah mempunyai kelebihan dan kes penggunaan yang tersendiri. Jika anda sedang membina URL untuk navigasi dalam aplikasi Angular anda, anda harus menggunakan kaedah queryParams. Jika anda ingin membina URL untuk membuat permintaan HTTP kepada pelayan luaran, anda harus menggunakan kaedah HttpParams.
Dalam contoh khusus anda, jika anda ingin menavigasi ke halaman dalam aplikasi Angular anda, anda harus menggunakan kaedah queryParams. Jika anda membuat permintaan HTTP kepada pelayan luaran, anda harus menggunakan kaedah HttpParams.