Apa perbedaan antara [routerLink]
dan routerLink
? Bagaimana sebaiknya Anda menggunakan masing-masing?
angular
routes
routerlink
angular-routerlink
Eslam Tahoon
sumber
sumber
Jawaban:
Anda akan melihat ini di semua arahan:
Saat Anda menggunakan tanda kurung, itu berarti Anda meneruskan properti yang dapat diikat (variabel).
Jadi variabel ini (routerLinkVariable) dapat didefinisikan di dalam kelas Anda dan harus memiliki nilai seperti di bawah ini:
Tetapi dengan variabel, Anda memiliki kesempatan untuk membuatnya dinamis bukan?
Jika tanpa tanda kurung Anda hanya melewatkan string dan Anda tidak dapat mengubahnya, kode itu sulit dikodekan dan akan seperti itu di seluruh aplikasi Anda.
PERBARUI:
Keistimewaan lain tentang menggunakan tanda kurung khusus untuk routerLink adalah Anda dapat meneruskan parameter dinamis ke tautan yang Anda navigasikan:
Jadi menambahkan variabel baru
Memperbarui [routerLink]
Jika Anda ingin mengklik tautan ini, itu akan menjadi:
sumber
Asumsikan bahwa Anda pernah
Artinya, mengklik hyperlink Resep akan melompat ke http: // localhost: 4200 / recipes
Asumsikan bahwa parameternya adalah 1
Artinya, dengan meneruskan parameter dinamis, 1 ke link, lalu Anda membuka http: // localhost: 4200 / recipes / 1
sumber
Tautan Router
routerLink dengan tanda kurung dan tidak ada - penjelasan sederhana.
Perbedaan antara routerLink = dan [routerLink] sebagian besar seperti jalur relatif dan absolut.
Mirip dengan href yang mungkin ingin Anda buka ./about.html atau https://your-site.com/about.html .
Bila Anda menggunakan tanpa tanda kurung maka Anda menavigasi relatif dan tanpa params;
my-app.com/dashboard/client
"melompat" dari my-app.com/dashboard ke my-app.com/dashboard/client
Ketika Anda menggunakan routerLink dengan tanda kurung maka Anda menjalankan aplikasi untuk menavigasi absolut dan Anda dapat menambahkan parameter bagaimana teka-teki tautan baru Anda
pertama-tama itu tidak akan menyertakan "lompatan" dari dasbor / ke dasbor / klien / client-id dan membawa Anda data klien / client-id yang lebih berguna untuk EDIT KLIEN
Cara absolut atau braket routerLink memerlukan pengaturan tambahan dari Anda komponen dan app.routing.module.ts
Kode tanpa kesalahan akan "memberitahu Anda lebih banyak / apa tujuan []" saat Anda melakukan pengujian. Cukup periksa ini dengan atau tanpa []. Daripada Anda dapat bereksperimen dengan penyeleksi yang - seperti disebutkan di atas - membantu dengan perutean dinamis.
Angular.io Selectors
Lihat apa yang dibangun routerLink
sumber