Actualmente, he de enrutamiento configurado en mi proyecto. Cada nuevo usuario se redirige a:

localhost:4200/default-ruta de acceso/login

Una vez que el usuario inicia sesión, son redirigidos a la casa de módulo, que tiene algo de niño rutas que el usuario puede navegar.

localhost:4200/default-path/casa

localhost:4200/default-path/casa/cuenta

localhost:4200/default-path/casa/cuenta/perfil

localhost:4200/default-path/inicio/panel de control

… y así sucesivamente.

Ahora, la parte en negrita ya está configurado en el módulo principal, y no necesita continuar con la edición. Sin embargo, me gustaría cambiar default-path a algo más.

Decir, que cada usuario puede pertenecer a uno de los tres proyectos: Proyecto de azul, rojo o verde. Esta información está disponible sólo después de que el usuario introduce sus credenciales y golpea el botón de inicio de sesión.

Lo que me gustaría para las rutas que decir después de inicio de sesión es:

localhost:4200/proyecto-azul/home

localhost:4200/proyecto-rojo/home

localhost:4200/proyecto-verde/home

Tener en cuenta, las partes en negrita NO son diferentes módulos con diferentes componentes asociados, son constantes que me gustaría ver en la URL.

Actualmente, mi <base> etiqueta en el índice es como <base href='/'> estoy tratando de editar este atributo. Lo que tengo es algo así como:

processLoginSuccess(loginTicket): void {
    const routeName = loginTicket.baseUrl //returns 'project-red'
    let b = document.getElementsByTagName('base')[0]
    b.setAttribute('href', routeName )

    this._router.navigate(['/home']);
}

Pero esto no parece funcionar.

Alguna idea?

  • stackoverflow.com/questions/37756167/…
  • Que parece que restablece la configuración para que el niño rutas. Necesito editar mi dirección url base. Puedo hacer eso con resetConfig?
  • No, yo no creo que hay una forma de modificar el url de la base
  • creo que la dinámica del router enlace se puede configurar en la configuración del router para los niños de las rutas de los proyectos de la ruta.
  • Que bueno escuchar. ¿Tienes un link o un plunker o algo que podría referirse?
  • algo como esto const projectsRoutes: Routes = [ { path: '', component: ProjectsComponent, children: [ { path: ':projectName/home', component: ProjectHomeComponent } ] } ];

InformationsquelleAutor Snowman | 2017-01-13

1 Comentario

Dejar respuesta

Please enter your comment!
Please enter your name here