routing - معلمات اختيارية أثناء توجيه الزاوي 2




angular routeparams (2)

هذا السؤال له إجابة هنا:

كيفية تعريف المعلمات اختياري في توجيه angular2.my التكوين التوجيه مثل هذا:

<a [routerLink]="['../abc',{xyz: blabla}]">
     and 
<a [routerLink]="['../abc']">

{ path: '/abc/:xyz', component: abc, name: 'abc' },  // Here i want xyz as optional perameter

وبالتالي فإن المشكلة هي كلما أنا باستخدام الأسلوب الأول مع المعلمة blabla أنه يعمل بشكل جيد لأنه في وقت التوجيه لقد عرفت معلمة xyz ولكن في حالة الأسلوب الثاني أنا لا أريد أن أرسل المعلمة بحيث يصبح عنوان ورل

HTTP: // المضيف المحلي: 8080 / # / sideNav / اي بي سي /

وهو لاودينغ أول مرة غرامة ولكن بعد تحديث الصفحة لا يظهر أي نافذة كاملة هو الحصول على فارغة مع عدم وجود محتويات. لذلك هناك أي طريقة لتوفير المعلمات اختياري أثناء التوجيه في angular2.

i have also tried without defining parameters like this

{ path: '/abc', component: abc, name: 'abc' }

ولكن هذا سوف رمي الخطأ في حالة قيمة شيز هو 1 أنه يحول 1 إلى true


يمكنك تحديد مسارات متعددة مع وبدون معلمة لها نفس المكون:

@RouteConfig([{
  path: '/abc',
  component: Abc,
  name: 'abc'},
{
  path: '/abc/:xyz',
  component: Abc,
  name: 'abcXyz'
}])

ومن ثم استخدام واحد التي تحتاج إليها

<a [routerLink]="['/abcXyz',{xyz: blabla}]">
     and 
<a [routerLink]="['/abc']">

إذا كان routeCongig موجودا في ملف الجذر الخاص بك، استخدم / قبل اسم الجذر وإذا كان على المستوى الثاني أو شيء، واستخدام

<a [routerLink]="['/parentRoot', {parentParams:value}, '/abc']">

يمكنك وضع معا،

@RouteConfig([
    { path: '/abc/:xyz', component: Abc,  name: 'abc' }
    { path: '/abc', component: Abc, name: 'abc' },
])

إذا كان هذا لا يعمل كما هو متوقع، يجب أن نرى أدناه،

Optional routeparams #3525
https://github.com/angular/angular/issues/3525