Angular - Redireccionar Desde un listado a 3 componentes diferentes

 
Vista:

Redireccionar Desde un listado a 3 componentes diferentes

Publicado por santival (2 intervenciones) el 17/02/2021 20:02:36
Se necesita pasar información de un Listado a 3 componentes pasando un id y poder editar la información; los usuarios hacen clic en un botón Editar (igual Borrar), que abre lo componentes ArticulosComponente, LibrosComponente, CapitulosComponente. El componente Listado debe enviar el Id y la información a los componentes para poder editarlos como muestro en la imagen:

q9ReU

En un método al darle click a botón editar DEBE redirigirme a un componente segun la selección del listado por ejemplo: Si Selecciona Articulo se dirige al componente articulo, y si selecciona Libro al componente libro para esto tengo en metodo esto:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
EditarProducto(item) {
     debugger;
 
    let tipoProducto = item.tipoProducto;
    let Lista = item;
 
        if (tipoProducto != null && tipoProducto != undefined && Lista != null && tipoProducto != Lista) {
 
          switch (tipoProducto) {
            case "Artículo":
              {
                this.router.navigate(['/RegistroProductos/Articulos', { id: item.idProducto }])                break;
              }
            case "Libros": {
this.router.navigate(['/RegistroProductos/Libros', { id: item.idProducto }]);
 
              break;
            }
            case "Capítulos": {
 
                 this.router.navigate(['/RegistroProductos/Capitulos', { id: item.idProducto }]);
              break;
            }
          }
        }
 
    //});
 
  }


En componente de ruteo secundario la tengo asi el código:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
const routes: Routes = [
  {
    path: '',
    component: RegistroProductosComponent,
    children: [
      {
        path: ':id', component: ArticulosComponent
      },
      {
        path: ':id', component: CapitulosComponent
      },
      {
        path: ':id', component: LibrosComponent
      }
    ]
  },
 
  { path: '**', redirectTo: '/productos', pathMatch: 'full'}
 
];
 
@NgModule({
  imports: [RouterModule.forChild(routes)],
  exports: [RouterModule]
})
export class RegistroProductosRoutingModule { }

No me muestra las vistas de los componentes, además no conozco mucho Angular 7, en algunos foros he leído sobre routing, pero no se como enviar el cuerpo del registro a las vistas.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder