>

내 Nativescript Aplication에서 nativescript-urlhandler를 사용하고 있습니다. 라우터를 넣으면 LoginFirstComponent에서 첫 번째로, 내가 원하는 ResetPassIdComponent에서 두 번째로 애플리케이션 라우팅이 발생합니다.

원하는 구성 요소로 직접 라우팅하고 싶습니다.

const routes: Routes = [
  {
    path: 'home',
    component: HomeComponent,
    canActivate: [AuthGuard],
    children: [
      {
        path: 'fp', component: FirstPageComponent
      },
      {
        path: 'profile', component: ProfileComponent
      }
    ]
  },
  {
    path: 'outsidelogin',
    component: outsideloginComponent,
    canActivate: [AuthGuardReset],
    children: [
      { path: 'login', component: LoginFirstComponent },
      { path: 'register', component: RegisterComponent },
      { path: 'resetPasswordRequest/:id', component: ResetPassIdComponent }
    ]
  },
    { path: '', redirectTo: '/home/fp', pathMatch: 'full' }
];

AuthGuard.ts

canActivate(): boolean {
        if (this.auth.isAuthenticated()) {
            return true;
        }
        this.router.navigate(['/outsidelogin/login']);
        return false;
    }

AuthGuardReset.ts

canActivate(): boolean {
        if (this.auth.isAuthenticated()) {
            return true;
        }
        this.router.navigate(['/outsidelogin/resetPasswordRequest/:id']);
        return false;
    }

My AuthGuardReset.ts는 ResetPassIdComponent로 이동하지 않으며 LoginFirstComponent에 남아 있습니다.

component.ts에는 다음 코드가 있습니다 :

ngOnInit() {
        if (this.auth.isAuthenticated()) {
            return true;
        }
        handleOpenURL((appURL: AppURL) => {
            console.log('Got the following appURL', appURL);
            this.myappurl = appURL
            let url_1 = this.myappurl.toString();
            let url_id = url_1.split("/").reverse()[0];
            this.resetpasss = url_id
            this.router.navigateByUrl('/outsidelogin/resetPasswordRequest/' + this.resetpasss);
        });
    }

이 문제를 해결하는 방법에 대한 아이디어를 알려주시겠습니까?

  • 이전 xml - XSLT 10 출력에서 ​​빈 요소 생략
  • 다음 javascript - 변수 이름 대신 변수 값에 대해 "속성 또는 메서드가 정의되어 있지 않습니다"라는 메시지가 나타나는 이유는 무엇입니까?