কৌণিক ক্ষেত্রে, 'প্যাথমেচ: পূর্ণ' কী এবং এর কী প্রভাব ফেলে?


106

এখানে এটি সম্পূর্ণ হিসাবে প্যাথ ম্যাচ ব্যবহার করে এবং যখন আমি এই প্যাথমেচটি মুছি তখন এটি অ্যাপ্লিকেশনটি লোড করে না বা প্রকল্পটি চালায় না

import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { HttpModule } from '@angular/http';
import { RouterModule } from '@angular/router';

import { AppComponent }  from './app.component';
import { WelcomeComponent } from './home/welcome.component';

/* Feature Modules */
import { ProductModule } from './products/product.module';

@NgModule({
  imports: [
    BrowserModule,
    HttpModule,
    RouterModule.forRoot([
      { path: 'welcome', component: WelcomeComponent },
      { path: '', redirectTo: 'welcome', pathMatch: 'full' },
      { path: '**', redirectTo: 'welcome', pathMatch: 'full' }
    ]),
    ProductModule
  ],
  declarations: [
    AppComponent,
    WelcomeComponent
  ],
  bootstrap: [ AppComponent ]
})
export class AppModule { }

উত্তর:


117
RouterModule.forRoot([
      { path: 'welcome', component: WelcomeComponent },
      { path: '', redirectTo: 'welcome', pathMatch: 'full' },
      { path: '**', component: 'pageNotFoundComponent' }
    ])

কেস 1 pathMatch:'full' : এই ক্ষেত্রে, যখন অ্যাপ্লিকেশন চালু হবে localhost:4200(বা কোনও সার্ভার) তখন ডিফল্ট পৃষ্ঠাটি স্বাগত স্ক্রিন হবে, যেহেতু ইউআরএল হবেhttps://localhost:4200/

এটি যদি ওয়াইল্ডকার্ডের কারণে পৃষ্ঠা নটফাউন্ড স্ক্রিনে https://localhost:4200/gibberishপুনর্নির্দেশ করেpath:'**'

কেস 2 pathMatch:'prefix' :

রুটগুলি থাকলে { path: '', redirectTo: 'welcome', pathMatch: 'prefix' }, এখন এটি কখনই ওয়াইল্ডকার্ড রুটে পৌঁছাতে পারে না কারণ প্রতিটি ইউআরএল path:''সংজ্ঞায়িত হয়।


হ্যালো, এই উদাহরণটির সুস্পষ্ট ব্যাখ্যার জন্য আপনাকে ধন্যবাদ, তবে এটি সম্পূর্ণ পরিষ্কার করার জন্য আপনি অন্য ধরণের রুটের সাথে অন্য উদাহরণ হিসাবে দিতে পারেন? (যেমন বাচ্চাদের রুটের সাথে উদাহরণ ব্যবহার করে ইত্যাদি using)। ধন্যবাদ
sohaieb

সত্যই সুন্দর ব্যাখ্যা স্যার তবে আপনি কীভাবে আমাকে 2 টি ভিন্ন লেআউট দিয়ে কনফিগার করবেন তা বলতে পারেন like অভ্যন্তরীণ বিন্যাস এবং বাহ্যিক বিন্যাসের মতো>
কপিল সোনি

88

pathMatch = 'full' যখন ইউআরএল ম্যাচের অবশিষ্ট, মিল না থাকা বিভাগগুলি উপসর্গের পথ হয় তখন কোনও রুটে আঘাতের ফলাফল হয়

pathMatch = 'prefix'যখন রাস্তাটি পুনর্নির্দেশের রুটের উপসর্গের পথ দিয়ে শুরু হয় তখন ইউআরএলটি পুনর্নির্দেশের রুটের সাথে মেলাতে বলে ।

রেফ: https://angular.io/guide/router#set-up-redirects

pathMatch: 'full' এর অর্থ, পুরো ইউআরএল পাথের মিল হওয়া দরকার এবং মেশানো অ্যালগরিদমের সাথে রুটটি গ্রাস করা হয়।

pathMatch: 'prefix' এর অর্থ, প্রথম রুট যেখানে পাথের সাথে ইউআরএল শুরুর শুরু হয় তা বেছে নেওয়া হয়েছে, তবে এরপরে রুটের সাথে মিলে যাওয়া অ্যালগরিদমের সাথে বাচ্চাদের রুটের মিল খুঁজে পাওয়া চলছে যেখানে বাকী URL টি মিলছে।


35

প্রযুক্তিগতভাবে সঠিক হওয়ার পরে, অন্যান্য উত্তরগুলি অ্যাঙ্গুলারের ইউআরএল-থেকে-রুটের মিলের ব্যাখ্যা থেকে উপকৃত হবে। আমি মনে করি না যে আপনি pathMatch: fullরাউটারটি প্রথম স্থানে কীভাবে কাজ করে তা আপনি যদি না জানেন তবে আপনি সম্পূর্ণরূপে (পাং ক্ষমা করে দিতে পারেন ) বুঝতে পারে understand


প্রথমে কয়েকটি প্রাথমিক বিষয় সংজ্ঞায়িত করা যাক। আমরা একটি উদাহরণ হিসাবে এই URL ব্যবহার করব: /users/james/articles?from=134#section

  1. এটি সুস্পষ্ট হতে পারে তবে প্রথমে চিহ্নিত করা যাক যে ক্যোয়ারী প্যারামিটারগুলি ( ?from=134) এবং টুকরা ( #section) পাথ মেলানোর ক্ষেত্রে কোনও ভূমিকা রাখে না । কেবলমাত্র বেস ইউআরএল ( /users/james/articles) গুরুত্বপূর্ণ।

  2. কৌণিক URL গুলিকে বিভাগগুলিতে বিভক্ত করে । এর বিভাগগুলি /users/james/articlesঅবশ্যই users, jamesএবং articles

  3. রাউটার কনফিগারেশনটি একটি একক রুট নোড সহ একটি গাছের কাঠামো। প্রতিটি Routeবস্তু হ'ল নোড, যার childrenনোড থাকতে পারে যার childrenফলস্বরূপ অন্যগুলি বা পাতার নোড থাকতে পারে।

রাউটারটির লক্ষ্য হ'ল রুট নোড থেকে শুরু করে একটি রাউটার কনফিগারেশন শাখা খুঁজে পাওয়া , যা ইউআরএল এর ঠিক সমস্ত (!!!) বিভাগের সাথে মেলে । এটি অত্যন্ত গুরুত্বপূর্ণ! যদি কৌণিকর কোনও রুট কনফিগারেশন শাখার সন্ধান না করে যা পুরো ইউআরএলটির সাথে মিল রাখতে পারে - আরও এবং কম কিছু না - এটি কোনও কিছুই রেন্ডার করবে না ।

যেমন আপনার লক্ষ্য URL টি হলে /a/b/cকিন্তু রাউটার শুধুমাত্র মেলে পারেন সক্ষম হয় /a/bবা /a/b/c/dতাহলে, কোন ম্যাচ এবং আবেদন কিছু রেন্ডার করা হবে না হয়।

অবশেষে, রুটগুলি নিয়মিত রুটের তুলনায় কিছুটা আলাদা redirectToআচরণ করে এবং আমার কাছে মনে হয় যে এগুলিই কেবল এমন এক জায়গা হবে যেখানে যে কেউ সত্যই ব্যবহার করতে চান । তবে আমরা এটি পরে পেতে হবে।pathMatch: full

ডিফল্ট ( prefix) পাথের মিল

নামের পিছনে যুক্তি prefixহ'ল এই জাতীয় রুট কনফিগারেশনটি পরীক্ষা করা হবে কিনা তা কনফিগার pathকরা বাকি ইউআরএল বিভাগগুলির উপসর্গ কিনা। তবে রাউটারটি কেবলমাত্র পুরো বিভাগগুলিকেই মেলে সক্ষম , যা এই নামকরণটিকে কিছুটা বিভ্রান্ত করে তোলে।

যাইহোক, যাক এটি আমাদের রুট-লেভেল রাউটার কনফিগারেশন:

const routes: Routes = [
  {
    path: 'products',
    children: [
      {
        path: ':productID',
        component: ProductComponent,
      },
    ],
  },
  {
    path: ':other',
    children: [
      {
        path: 'tricks',
        component: TricksComponent,
      },
    ],
  },
  {
    path: 'user',
    component: UsersonComponent,
  },
  {
    path: 'users',
    children: [
      {
        path: 'permissions',
        component: UsersPermissionsComponent,
      },
      {
        path: ':userID',
        children: [
          {
            path: 'comments',
            component: UserCommentsComponent,
          },
          {
            path: 'articles',
            component: UserArticlesComponent,
          },
        ],
      },
    ],
  },
];

নোট করুন যে Routeএখানে প্রতিটি একক ডিফল্ট ডিফল্ট ম্যাচ কৌশলটি ব্যবহার করে prefix। এই কৌশলটির অর্থ রাউটারটি পুরো কনফিগারেশন গাছের উপরে পুনরাবৃত্তি করে এবং URL টি সম্পূর্ণরূপে মেলে না যাওয়া অবধি বিভাগের দ্বারা লক্ষ্য URL বিভাগের সাথে এটির সাথে মিলানোর চেষ্টা করে । এই উদাহরণটির জন্য এটি কীভাবে করা হবে তা এখানে রয়েছে:

  1. প্রথম ইউআরএল বিভাগের জন্য একটি সঠিক মিলের জন্য সন্ধান করে মূল অ্যারের উপরে আইট্রেট করুন - users
  2. 'products' !== 'users', তাই যে শাখা এড়িয়ে যান। নোট করুন যে আমরা একটি .startsWith()বা .includes()- সম্পূর্ণ বিভাগের সাথে মেলে গণনার চেয়ে সাম্যতা পরীক্ষা ব্যবহার করছি !
  3. :otherযে কোনও মানের সাথে মেলে, তাই এটি একটি মিল। তবে লক্ষ্যযুক্ত ইউআরএল এখনও পুরোপুরি মেলে না (আমাদের এখনও মেলাতে হবে jamesএবং articles), এইভাবে রাউটারটি বাচ্চাদের সন্ধান করে।
  • শুধুমাত্র সন্তান :otherহয় tricks, যা !== 'james'অত: পর একটি ম্যাচ না।
  1. কৌণিক তারপর মূল অ্যারে ফিরে retraces এবং সেখান থেকে অবিরত।
  2. 'user' !== 'users, শাখা বাদ দিন।
  3. 'users' === 'users- বিভাগটি মেলে। তবে এটি এখনও পুরো ম্যাচ নয়, সুতরাং আমাদের বাচ্চাদের সন্ধান করা প্রয়োজন (৩ য় ধাপের মতো)।
  • 'permissions' !== 'james', বাদ দাও.
  • :userIDযে কোনও কিছুর সাথে মেলে, সুতরাং আমাদের jamesবিভাগটির জন্য একটি ম্যাচ আছে । তবে এটি এখনও পুরো ম্যাচ নয়, সুতরাং আমাদের এমন একটি সন্তানের সন্ধান করা দরকার যা মেলে articles
    1. আমরা দেখতে পাচ্ছি যে :userIDএটির একটি শিশু পথ রয়েছে articles, যা আমাদের পুরো ম্যাচ দেয়! এইভাবে আবেদনটি রেন্ডার করে UserArticlesComponent

সম্পূর্ণ ইউআরএল ( full) মিলছে

উদাহরণ 1

এখন ভাবুন যে usersরুট কনফিগারেশন অবজেক্টটি এরকম দেখাচ্ছে:

{
  path: 'users',
  component: UsersComponent,
  pathMatch: 'full',
  children: [
    {
      path: 'permissions',
      component: UsersPermissionsComponent,
    },
    {
      path: ':userID',
      component: UserComponent,
      children: [
        {
          path: 'comments',
          component: UserCommentsComponent,
        },
        {
          path: 'articles',
          component: UserArticlesComponent,
        },
      ],
    },
  ],
}

এর ব্যবহারটি নোট করুন pathMatch: full । যদি এটি হয় তবে 1-5 পদক্ষেপ একই হবে তবে 6 ধাপটি আলাদা হবে:

  1. 'users' !== 'users/james/articles- বিভাগটি মেলে না কারণ পথের usersসাথে কনফিগারেশন রয়েছেpathMatch: full পুরো URL- এর মেলে না, যা users/james/articles
  2. কোনও মিল নেই বলে আমরা এই শাখাটি বাদ দিচ্ছি ipping
  3. এই মুহুর্তে আমরা কোনও মিল খুঁজে না পেয়ে রাউটার কনফিগারেশনের শেষে পৌঁছেছি। অ্যাপ্লিকেশন কিছুই রেন্ডার করে ।

উদাহরণ 2

পরিবর্তে আমাদের যদি এটি থাকে তবে কী হবে:

{
  path: 'users/:userID',
  component: UsersComponent,
  pathMatch: 'full',
  children: [
    {
      path: 'comments',
      component: UserCommentsComponent,
    },
    {
      path: 'articles',
      component: UserArticlesComponent,
    },
  ],
}

users/:userIDpathMatch: fullশুধুমাত্র ম্যাচগুলির সাথেusers/james এইভাবে এটি একটি আবার নো মেলে, এবং আবেদন কিছুই রেন্ডার করে।

উদাহরণ 3

আসুন এটি বিবেচনা করুন:

{
  path: 'users',
  children: [
    {
      path: 'permissions',
      component: UsersPermissionsComponent,
    },
    {
      path: ':userID',
      component: UserComponent,
      pathMatch: 'full',
      children: [
        {
          path: 'comments',
          component: UserCommentsComponent,
        },
        {
          path: 'articles',
          component: UserArticlesComponent,
        },
      ],
    },
  ],
}

এক্ষেত্রে:

  1. 'users' === 'users- বিভাগটি মেলে, তবে james/articlesএখনও মেলে না। আসুন বাচ্চাদের সন্ধান করি।
  • 'permissions' !== 'james' - এড়িয়ে যান
  • :userID'শুধুমাত্র একটি একক বিভাগে মেলে, যা হতে পারে james। তবে এটি একটি pathMatch: fullরুট এবং এটি অবশ্যই মিলবে james/articles(পুরো অবশিষ্ট URL টি)। এটি এটি করতে সক্ষম নয় এবং সুতরাং এটি কোনও মিল নয় (তাই আমরা এই শাখাটি এড়িয়ে যাচ্ছি)!
  1. আবার, আমরা URL- এর কোনও মিল খুঁজে পাইনি এবং অ্যাপ্লিকেশন কিছুই রেন্ডার করে না

আপনি যেমন খেয়াল করেছেন, একটি pathMatch: fullকনফিগারেশন মূলত এটি বলছে:

আমার বাচ্চাদের উপেক্ষা করুন এবং কেবল আমার সাথে মেলে। যদি আমি নিজে থেকে বাকি সমস্ত ইউআরএল সেগমেন্টের সাথে মেলে না রাখতে পারি তবে এগিয়ে যান।

পুনঃনির্দেশ

যে কোনও Routeএকটি সংজ্ঞায়িত করেছে redirectToসেগুলি একই নীতি অনুসারে টার্গেট URL এর সাথে মিলবে। এখানে কেবল পার্থক্যটি হ'ল পুনঃনির্দেশটি সেগমেন্টের সাথে ম্যাচ করার সাথে সাথেই প্রয়োগ করা হবে । এর অর্থ হ'ল যদি কোনও পুনর্নির্দেশের রুট ডিফল্ট prefixকৌশল ব্যবহার করে তবে একটি পুনর্নির্দেশের কারণ হিসাবে আংশিক মিল যথেষ্ট । এখানে একটি ভাল উদাহরণ:

const routes: Routes = [
  {
    path: 'not-found',
    component: NotFoundComponent,
  },
  {
    path: 'users',
    redirectTo: 'not-found',
  },
  {
    path: 'users/:userID',
    children: [
      {
        path: 'comments',
        component: UserCommentsComponent,
      },
      {
        path: 'articles',
        component: UserArticlesComponent,
      },
    ],
  },
];

আমাদের প্রাথমিক URL ( /users/james/articles) এর জন্য, এখানে কী হবে:

  1. 'not-found' !== 'users' - বাদ দাও.
  2. 'users' === 'users' - আমাদের একটা ম্যাচ আছে
  3. এই ম্যাচটিতে একটি রয়েছে redirectTo: 'not-found'যা অবিলম্বে প্রয়োগ করা হয়
  4. লক্ষ্য URL- এ পরিবর্তন not-found
  5. রাউটারটি আবার মিলতে শুরু করে এবং এখনই একটি ম্যাচ খুঁজে বের not-foundকরে। আবেদনটি রেন্ডার করে NotFoundComponent

এখন বিবেচনা করুন যদি এই usersরুটেও থাকে তবে কি হবে pathMatch: full:

const routes: Routes = [
  {
    path: 'not-found',
    component: NotFoundComponent,
  },
  {
    path: 'users',
    pathMatch: 'full',
    redirectTo: 'not-found',
  },
  {
    path: 'users/:userID',
    children: [
      {
        path: 'comments',
        component: UserCommentsComponent,
      },
      {
        path: 'articles',
        component: UserArticlesComponent,
      },
    ],
  },
];
  1. 'not-found' !== 'users' - বাদ দাও.
  2. usersইউআরএল এর প্রথম বিভাগটি মিলবে, তবে রুট কনফিগারেশনের জন্য একটি fullম্যাচ প্রয়োজন , সুতরাং এড়িয়ে যান।
  3. 'users/:userID'ম্যাচ users/jamesarticlesএখনও মিলছে না তবে এই রুটে শিশু রয়েছে।
  • আমরা articlesবাচ্চাদের মধ্যে একটি মিল খুঁজে পাই। পুরো URL টি এখন মিলছে এবং অ্যাপ্লিকেশনটি রেন্ডার করে UserArticlesComponent

খালি পথ ( path: '')

খালি পথটি একটি বিশেষ কেস কারণ এটি কোনও " সেগমেন্ট " না করেই যে কোনও বিভাগকে মেলাতে পারে (সুতরাং এটি বাচ্চাদের আবার সেই বিভাগটির সাথে মেলাতে হবে)। এই উদাহরণ বিবেচনা করুন:

const routes: Routes = [
  {
    path: '',
    children: [
      {
        path: 'users',
        component: BadUsersComponent,
      }
    ]
  },
  {
    path: 'users',
    component: GoodUsersComponent,
  },
];

ধরা যাক আমরা অ্যাক্সেসের চেষ্টা করছি /users:

  • path: ''সর্বদা মিলবে, এইভাবে রুট মেলে। তবে পুরো URL টি মিলছে না - আমাদের এখনও ম্যাচ করা দরকারusers !
  • আমরা দেখতে পাচ্ছি যে একটি শিশু রয়েছে users, যা বাকী (এবং কেবল!) বিভাগের সাথে মেলে এবং আমাদের একটি পুরো ম্যাচ আছে। আবেদনটি রেন্ডার করে BadUsersComponent

এখন মূল প্রশ্নে ফিরে আসুন

ওপি এই রাউটার কনফিগারেশন ব্যবহার করেছে:

const routes: Routes = [
  {
    path: 'welcome',
    component: WelcomeComponent,
  },
  {
    path: '',
    redirectTo: 'welcome',
    pathMatch: 'full',
  },
  {
    path: '**',
    redirectTo: 'welcome',
    pathMatch: 'full',
  },
];

যদি আমরা মূল ইউআরএল ( /) তে নেভিগেট করে থাকি তবে রাউটার কীভাবে সমাধান করবে তা এখানে রয়েছে:

  1. welcome খালি খণ্ডের সাথে মেলে না, তাই এড়িয়ে যান।
  2. path: ''খালি খণ্ডের সাথে মেলে। এটির একটি রয়েছে pathMatch: 'full'যা আমরা পুরো ইউআরএলের সাথে মিলে যাওয়ায় সন্তুষ্ট (এটির একটি খালি খণ্ড ছিল)।
  3. পুনর্নির্দেশ welcomeঘটে এবং অ্যাপ্লিকেশন রেন্ডার হয় WelcomeComponent

না থাকলে কী হত pathMatch: 'full'?

আসলে, একজন পুরো জিনিসটি একই রকম আচরণ করবে বলে আশা করবে। তবে, কৌণিক স্পষ্টভাবে এই জাতীয় কনফিগারেশন ( { path: '', redirectTo: 'welcome' }) রোধ করে কারণ আপনি যদি এটি Routeউপরে রাখেন তবে welcomeএটি তাত্ত্বিকভাবে পুনঃনির্দেশগুলির একটি অন্তহীন লুপ তৈরি করবে। সুতরাং কৌণিক মাত্র একটি ত্রুটি নিক্ষেপ করে , যার কারণে অ্যাপ্লিকেশনটি মোটেই কাজ করবে না! ( https://angular.io/api/router/Route#pathMatch )

আসলে, এটি আমার কাছে খুব বেশি বোঝায় না কারণ অ্যাংুলারও জাতীয় অন্তহীন পুনর্নির্দেশগুলির বিরুদ্ধে সুরক্ষা কার্যকর করেছে - এটি কেবল রাউটিং স্তরের প্রতি একক পুনঃনির্দেশ চালায়! এটি আরও সমস্ত পুনঃনির্দেশ বন্ধ করে দেবে (যেমন আপনি নীচের উদাহরণে দেখবেন)।

কি হবে path: '**'?

path: '**'এর সাথে বা ছাড়া একেবারে কিছু মিলবে ( af/frewf/321532152/fsaএকটি ম্যাচ)pathMatch: 'full'

এছাড়াও, যেহেতু এটি সমস্ত কিছুর সাথে মেলে তাই মূল পাথটিও অন্তর্ভুক্ত থাকে যা { path: '', redirectTo: 'welcome' }এই সেটআপটিতে সম্পূর্ণ অপ্রয়োজনীয় করে তোলে ।

মজাদারভাবে যথেষ্ট, এই কনফিগারেশনটি রাখা ভাল is

const routes: Routes = [
  {
    path: '**',
    redirectTo: 'welcome'
  },
  {
    path: 'welcome',
    component: WelcomeComponent,
  },
];

আমরা যদি নেভিগেট /welcome, path: '**'একটি ম্যাচ এবং স্বাগত করার জন্য একটি পুনর্নির্দেশ ঘটবে হবে। তাত্ত্বিকভাবে এটি পুনঃনির্দেশগুলির একটি অন্তহীন লুপটি সরিয়ে ফেলতে হবে তবে কৌণিক বন্ধ হয়ে যায় যা তাত্ক্ষণিকভাবে (আমি আগে বর্ণিত সুরক্ষার কারণে) এবং পুরো জিনিসটি ঠিক কাজ করে।


আমি পুরো পথের জন্য কিছুটা বিভ্রান্ত হয়ে পড়েছি। আপনি সম্পূর্ণ ইউআরএল ম্যাচিংয়ের উদাহরণ 3 তে উল্লেখ করেছেন যে আপনি Ignore my children and only match me. If I am not able to match all of the remaining URL segments myself, then move on. যেখানে পুনর্নির্দেশ বিভাগের পুরো পথের মিল হিসাবে উল্লেখ করেছেন আপনি We find a match for articles in the children. The whole URL is now matched and the application renders UserArticlesComponent.যা বুঝতে পেরেছিলেন তা থেকেও এটি রিজেক্টের সাথে মেলে না?
আরএনস

রেকর্ডের জন্য - আমি ignore my childrenনিজেই ব্যাখ্যাটি নিয়ে এসেছি । সন্দেহ এই হল কিভাবে কৌণিক ডেভেলপারদের এটি দেখতে, কিন্তু এটা হয় নীতির এক pathMatch: 'full'। সুতরাং আপনি যে পুনঃনির্দেশের উদাহরণটি উল্লেখ করছেন তাতে নোটিশটি pathMath: 'full'দ্বিতীয় রুটে ( path: 'users') প্রয়োগ করা হয়েছে , যার কারণে এটি মেলে না । ম্যাচিং রুটটি path: 'users/:userID'যা ব্যবহার করে না pathMatch: 'full'এবং যথারীতি কাজ করে না । সুতরাং এটি প্রথম মেলে users/jamesএবং তারপরে আমরা articlesএর শিশুদের জন্য সন্ধান করি (আবার এটি ব্যবহার করে না pathMatch: 'full')।
অ্যাভিয়াস

3

পাথের সাথে মেলে কৌশল, 'উপসর্গ' বা 'পূর্ণ' এর একটি। ডিফল্ট হ'ল 'উপসর্গ'।

ডিফল্টরূপে, রাউটারটি URL প্রদত্ত পাথের সাথে মিলছে কিনা তা দেখতে বাম দিক থেকে URL উপাদানগুলি পরীক্ষা করে এবং কোনও ম্যাচ হলে থামে। উদাহরণস্বরূপ, '/ টিম / 11 / ব্যবহারকারী' টিম /: আইডি 'মেলে।

পুরো URL টির বিপরীতে প্যাথ-ম্যাচের কৌশল 'পূর্ণ' ম্যাচ। খালি পাথের রুটগুলিকে পুনর্নির্দেশের সময় এটি করা গুরুত্বপূর্ণ। অন্যথায়, কারণ খালি পাথ যে কোনও ইউআরএল এর উপসর্গ, তাই রাউটার রিডাইরেক্টটিকে পুনঃনির্দেশিত গন্তব্যে নেভিগেট করার সময়ও অন্তহীন লুপ তৈরি করে apply

সূত্র: https://angular.io/api/router/Route#properties

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.