নিখুঁত পাথ রুটিং
নেভিগেশন জন্য 2 পদ্ধতি আছে, .navigate()
এবং.navigateByUrl()
আপনি .navigateByUrl()
পরম পাথ রাউটিংয়ের জন্য পদ্ধতিটি ব্যবহার করতে পারেন :
import {Router} from '@angular/router';
constructor(private router: Router) {}
navigateToLogin() {
this.router.navigateByUrl('/login');
}
আপনি যে উপাদানটিতে নেভিগেট করতে চান তার URL এর নিরঙ্কুশ পথটি রেখেছেন।
দ্রষ্টব্য: রাউটারের navigateByUrl
পদ্ধতিতে কল করার সময় সর্বদা সম্পূর্ণ নিখুঁত পাথ নির্দিষ্ট করুন । সম্পূর্ণ পাথ অবশ্যই একটি শীর্ষস্থানীয় দিয়ে শুরু করা উচিত/
// Absolute route - Goes up to root level
this.router.navigate(['/root/child/child']);
// Absolute route - Goes up to root level with route params
this.router.navigate(['/root/child', crisis.id]);
আপেক্ষিক পাথ রুটিং
আপনি যদি আপেক্ষিক পথের রাউটিং ব্যবহার করতে চান তবে .navigate()
পদ্ধতিটি ব্যবহার করুন ।
দ্রষ্টব্য: রাউটিংটি কীভাবে কাজ করে তা বিশেষত অভিভাবক, ভাইবোন এবং শিশু রুটগুলি কীভাবে কার্যকর হয়:
// Parent route - Goes up one level
// (notice the how it seems like you're going up 2 levels)
this.router.navigate(['../../parent'], { relativeTo: this.route });
// Sibling route - Stays at the current level and moves laterally,
// (looks like up to parent then down to sibling)
this.router.navigate(['../sibling'], { relativeTo: this.route });
// Child route - Moves down one level
this.router.navigate(['./child'], { relativeTo: this.route });
// Moves laterally, and also add route parameters
// if you are at the root and crisis.id = 15, will result in '/sibling/15'
this.router.navigate(['../sibling', crisis.id], { relativeTo: this.route });
// Moves laterally, and also add multiple route parameters
// will result in '/sibling;id=15;foo=foo'.
// Note: this does not produce query string URL notation with ? and & ... instead it
// produces a matrix URL notation, an alternative way to pass parameters in a URL.
this.router.navigate(['../sibling', { id: crisis.id, foo: 'foo' }], { relativeTo: this.route });
বা আপনার যদি কেবলমাত্র বর্তমান রুটের পাথের মধ্যে নেভিগেটের প্রয়োজন হয় তবে একটি ভিন্ন রুটের প্যারামিটারে:
// If crisis.id has a value of '15'
// This will take you from `/hero` to `/hero/15`
this.router.navigate([crisis.id], { relativeTo: this.route });
লিঙ্ক পরামিতি অ্যারে
একটি লিঙ্ক পরামিতি অ্যারে রাউটার নেভিগেশনের জন্য নিম্নলিখিত উপাদানগুলি ধারণ করে:
- গন্তব্য উপাদানটির পথে যাওয়ার পথ।
['/hero']
- প্রয়োজনীয় এবং alচ্ছিক রুট প্যারামিটারগুলি যা রুট URL এ যায়।
['/hero', hero.id]
অথবা['/hero', { id: hero.id, foo: baa }]
ডিরেক্টরি মত সিনট্যাক্স
রাউটারটি রুটের নাম অনুসন্ধানে সহায়তার জন্য লিঙ্ক পরামিতিগুলির তালিকায় ডিরেক্টরি-এর মতো সিনট্যাক্স সমর্থন করে:
./
বা কোনও শীর্ষস্থানীয় স্ল্যাশ বর্তমান স্তরের তুলনায় নয়।
../
রুটের পথে এক স্তর পর্যন্ত যেতে।
আপনি পূর্বপুরুষের পাথের সাথে আপেক্ষিক নেভিগেশন সিনট্যাক্স একত্রিত করতে পারেন। যদি আপনাকে অবশ্যই কোনও ভাইবাল রুটে চলাচল করতে হয় তবে আপনি ../<sibling>
কনভেনশনটি এক স্তরের উপরে যেতে, তারপরে ভাইবাল রুটের পথ ধরে নীচে যেতে পারেন।
আপেক্ষিক নাগরিককরণ সম্পর্কিত গুরুত্বপূর্ণ নোটসমূহ
Router.navigate
পদ্ধতির সাথে কোনও আপেক্ষিক পাথ নেভিগেট করতে ActivatedRoute
আপনার বর্তমান রুট ট্রিতে কোথায় আছেন তার রাউটার জ্ঞান দেওয়ার জন্য আপনাকে সরবরাহ করতে হবে ।
লিঙ্ক পরামিতি অ্যারে পরে, একটি relativeTo
বৈশিষ্ট্য সেট সঙ্গে একটি বস্তু যুক্ত করুন ActivatedRoute
। রাউটারটি তখন সক্রিয় রুটের অবস্থানের ভিত্তিতে টার্গেট URL গণনা করে।
সরকারী কৌণিক রাউটার ডকুমেন্টেশন থেকে