как исправить 'Ошибка: не может соответствовать ни один маршрут.Сегмент URL: «anythongs» - PullRequest
0 голосов
/ 26 января 2019

У меня проблема с моей системой маршрутов в моем угловом проекте.Я получаю эту ошибку каждый раз, когда я вызываю маршрут reset-password/:token.
каждый раз, когда я вызываю этот маршрут, http://localhost:4200/reset-password?token=token_info, браузер (Google Chrome) перенаправляет меня на http://localhost:4200/reset-password и возвращает это сообщение об ошибке.

core.js:1673 ERROR Error: Uncaught (in promise): Error: Cannot match any routes. URL Segment: 'reset-password'
Error: Cannot match any routes. URL Segment: 'reset-password'
    at ApplyRedirects.push../node_modules/@angular/router/fesm5/router.js.ApplyRedirects.noMatchError (router.js:1384)
    at CatchSubscriber.selector (router.js:1365)
    at CatchSubscriber.push../node_modules/rxjs/_esm5/internal/operators/catchError.js.CatchSubscriber.error (catchError.js:34)
    at MapSubscriber.push../node_modules/rxjs/_esm5/internal/Subscriber.js.Subscriber._error (Subscriber.js:80)
    at MapSubscriber.push../node_modules/rxjs/_esm5/internal/Subscriber.js.Subscriber.error (Subscriber.js:60)
    at MapSubscriber.push../node_modules/rxjs/_esm5/internal/Subscriber.js.Subscriber._error (Subscriber.js:80)
    at MapSubscriber.push../node_modules/rxjs/_esm5/internal/Subscriber.js.Subscriber.error (Subscriber.js:60)
    at MapSubscriber.push../node_modules/rxjs/_esm5/internal/Subscriber.js.Subscriber._error (Subscriber.js:80)
    at MapSubscriber.push../node_modules/rxjs/_esm5/internal/Subscriber.js.Subscriber.error (Subscriber.js:60)
    at TapSubscriber.push../node_modules/rxjs/_esm5/internal/operators/tap.js.TapSubscriber._error (tap.js:61)
    at resolvePromise (zone.js:814)
    at resolvePromise (zone.js:771)
    at zone.js:873
    at ZoneDelegate.push../node_modules/zone.js/dist/zone.js.ZoneDelegate.invokeTask (zone.js:421)
    at Object.onInvokeTask (core.js:3811)
    at ZoneDelegate.push../node_modules/zone.js/dist/zone.js.ZoneDelegate.invokeTask (zone.js:420)
    at Zone.push../node_modules/zone.js/dist/zone.js.Zone.runTask (zone.js:188)
    at drainMicroTaskQueue (zone.js:595)

С другой стороны, все другие дороги работают

это мой код
app.module.ts

const appRoutes: Routes = [{
    path: '',
    component: LoginLayoutComponent,
    children: [
        { path: '', component: SigninComponent },
        {
            path: 'forgot-password',
            component: ForgotPasswordComponent,
        },
        {
            path: 'forgot-password/confirmation',
            component: ForgotPasswordConfirmationComponent,
        },
        { 
            path: 'reset-password/:token',
            component: ResetPasswordComponent,
        },
        { path: 'signup', component: SignupComponent },
        { path: 'logout', component: LogoutComponent, canActivate: [
            CanActivateViaAuthGuard
           ]
        },
      ]
    },

пожалуйста, вы можетеПомоги мне?спасибо.

Ответы [ 3 ]

0 голосов
/ 26 января 2019

Вашему маршруту для сброса пароля требуется параметр токена, Возможно, когда вы звоните по маршруту, вы его пропустили.

0 голосов
/ 26 января 2019

Вы определили 'reset-password /: token' с токеном, поэтому вам нужно передать токен с этим маршрутом.

Либо вам нужно передать токен с этим маршрутом, либо определить другой маршрут без токена.

0 голосов
/ 26 января 2019

Добавить reset-password в качестве маршрута до { path: 'reset-password/:token', ... } объекта.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...