ionic-team / ionic-team/ionic-framework

bug: IonTabs throws when a Fragment contains one IonRouterOutlet

Abierto Apto para principiantes
#31,410 1 comentario 0 reacciones 0 asignados Ver en GitHub
triage
Lenguaje dominante
TypeScript
Estrellas
52.7k
Forks
13.3k
Merge medio
1 d 15 h
PR fusionados (30 d)
51

Descripción

### Prerequisites

- [x] I have read the contributing guidelines.
- [x] I agree to follow the Code of Conduct.
- [x] I searched existing issues without finding this problem.

### Ionic Framework Version

v8.x, v9.x, Nightly

### Current Behavior

When `IonRouterOutlet` is the only child of a React Fragment passed to `IonTabs`, rendering throws:

```text
TypeError: Cannot read properties of undefined (reading 'type')
```

`IonTabs` treats the Fragment's children as an array, but React stores a single child as an element.

### Expected Behavior

`IonTabs` should render when `IonRouterOutlet` is wrapped in a single-child Fragment.

### Steps to Reproduce

1. Clone the reproduction.
2. Run `npm install` and `npm run dev`.
3. Open the app.

### Code Reproduction URL

https://github.com/Benziza/ion-tabs-fragment-repro

### Ionic Info

```text
Ionic CLI : 7.2.1
Ionic Framework : @ionic/react 9.0.1
NodeJS : v25.6.0
npm : 11.12.1
OS : Windows 10
```

### Additional Information

Removing the Fragment allows the same app to render.

Guía de contribución

Abrir la guía de contribución

Línea de trabajo

Start with the IonTabs implementation and reproduce the failure using the linked app with npm install and npm run dev. Confirm the fix by rendering an IonRouterOutlet as the only child in a React Fragment passed to IonTabs without the TypeError.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
react, typescript
Área
frontend
Tipo de issue
Error
Dificultad
2/5
Tiempo estimado
1-3 horas
Estado de actividad
Activo
Claridad
Bastante claro
Aptitud para principiantes
72/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.