CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

[DEV] Bug React Native Android

loyyePrintf
loyyePrintf
Niveau 5
09 mai 2024 à 21:46:48

Salut les gars, je dev une App via React Native Expo. L'émulateur IOS fonctionne très bien, mais le coté Android me renvoie cette erreur :

Error: Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: undefined. You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports.

Check the render method of `MainApp`.

https://image.noelshack.com/fichiers/2024/19/4/1715283837-capture-d-e-cran-2024-05-09-a-15-43-17.png

Voici la MainApp :

export default function MainApp() {
  const [isConnected, setIsConnected] = useState(true);

  useEffect(() => {
    const unsubscribe = NetInfo.addEventListener(state => {
      console.log('Connection type', state.type);
      console.log('Is connected?', state.isConnected);
      setIsConnected(state.isConnected);
    });
    
    return () => {
      unsubscribe();
    };
  }, []);

  return (
    <RecordingProvider>
      <LoginContextProvider>
      <LibraryProvider>
        <NavigationContainer>
          <Stack.Navigator screenOptions={{ headerShown: false }}>
            {isConnected ? (
              <>
                <Stack.Screen name="AuthStack" component={AuthStack} />
                <Stack.Screen name="AppTabs" component={AppTabs} />
                <Stack.Screen
                  name="SoundtransformationStack"
                  component={SoundtransformationStack}
                />
                <Stack.Screen
                  name="PdfViewerStack"
                  component={PdfViewerStack}
                />
              </>
            ) : (
              <Stack.Screen name="OfflineStack" component={OfflineStack} />
            )}
          </Stack.Navigator>
        </NavigationContainer>
        </LibraryProvider>
      </LoginContextProvider>
    </RecordingProvider>
  );
}

J'ai cherché et tenté les trucs proposés sur google... bref... je suis désespéré https://image.noelshack.com/fichiers/2017/05/1485992280-risitassuicidelarme.png

Avez vous des idées ???????????? :(

[OwO]
[OwO]
Niveau 64
09 mai 2024 à 21:48:54

Montre les import dans ton fichier

loyyePrintf
loyyePrintf
Niveau 5
09 mai 2024 à 21:49:29

Il faut savoir que j'ai séparé (pour le responsive) chaque composant par : "FileName.android.tsx" OU "FileName.ios.tsx", afin de pouvoir appeler le composant en fonction de la plateforme...

loyyePrintf
loyyePrintf
Niveau 5
09 mai 2024 à 21:49:42

Le 09 mai 2024 à 21:48:54 :
Montre les import dans ton fichier

import { NavigationContainer, useNavigation } from "@react-navigation/native";
import { createBottomTabNavigator } from "@react-navigation/bottom-tabs";
import { createStackNavigator } from "@react-navigation/stack";
import Sign from "./src/Pages/Sign";
import HomePage from "./src/Pages/HomePage";
import Profile from "./src/Pages/ProfilePage";
import Library from "./src/Pages/Library";
import Selector from "./src/Pages/Selector";
import ForgottedPassword from "./src/Pages/ForgottedPassword";
import Offline from "./src/Pages/OfflineScreen";
import PdfViewer from "./src/Pages/MusicSheet";
import {
  RecordingProvider,
  useRecording,
} from "./src/Contexts/PartitionContext";
import { LoginContextProvider } from "./src/Contexts/LoginCtx.ios";
import { Image } from "react-native";
import React, { useEffect, useState } from "react";
import NetInfo from "@react-native-community/netinfo";
import { Dimensions } from "react-native";
import { LibraryProvider } from './src/Contexts/LibraryContext';
Message édité le 09 mai 2024 à 21:50:12 par loyyePrintf
[OwO]
[OwO]
Niveau 64
09 mai 2024 à 21:50:21

Si tu "export default Component" il faut "import Component from ..."
Si tu "export Component" if faut "import { Component } from ..."

[OwO]
[OwO]
Niveau 64
09 mai 2024 à 21:51:46

Le 09 mai 2024 à 21:49:29 :
Il faut savoir que j'ai séparé (pour le responsive) chaque composant par : "FileName.android.tsx" OU "FileName.ios.tsx", afin de pouvoir appeler le composant en fonction de la plateforme...

Est ce que tu export toujours de la même manière ?
Vu tes imports il faut que tu "export default" dans la plupart de tes fichiers

loyyePrintf
loyyePrintf
Niveau 5
09 mai 2024 à 21:53:21

Le 09 mai 2024 à 21:51:46 :

Le 09 mai 2024 à 21:49:29 :
Il faut savoir que j'ai séparé (pour le responsive) chaque composant par : "FileName.android.tsx" OU "FileName.ios.tsx", afin de pouvoir appeler le composant en fonction de la plateforme...

Est ce que tu export toujours de la même manière ?
Vu tes imports il faut que tu "export default" dans la plupart de tes fichiers

Normalement oui, enfin je pense.. J'avoue m'être vraiment concentré sur le coté IOS et délaissé le coté Android. Je peux check ça

loyyePrintf
loyyePrintf
Niveau 5
09 mai 2024 à 21:58:47

Le 09 mai 2024 à 21:50:21 :
Si tu "export default Component" il faut "import Component from ..."
Si tu "export Component" if faut "import { Component } from ..."

J'ai vu cette réponse sur StackOverflow, j'ai essayé mais aucune modification du message d'erreur. Normalement les composants sont "export default" et fonctionne très bien coté IOS. J'ai vraiment plus d'idée

[OwO]
[OwO]
Niveau 64
09 mai 2024 à 22:00:47

Le 09 mai 2024 à 21:58:47 :

Le 09 mai 2024 à 21:50:21 :
Si tu "export default Component" il faut "import Component from ..."
Si tu "export Component" if faut "import { Component } from ..."

J'ai vu cette réponse sur StackOverflow, j'ai essayé mais aucune modification du message d'erreur. Normalement les composants sont "export default" et fonctionne très bien coté IOS. J'ai vraiment plus d'idée

Dans ta fonction MainApp, dégage les composants 1 par 1 pour trouver ceux qui sont problématique
Une fois que t'as trouvé celui qui pose problème, va dans le fichier de ce composants et réduit les lignes de code petit à petit

Tu cerneras l'erreur

loyyePrintf
loyyePrintf
Niveau 5
09 mai 2024 à 22:02:36

Le 09 mai 2024 à 22:00:47 :

Le 09 mai 2024 à 21:58:47 :

Le 09 mai 2024 à 21:50:21 :
Si tu "export default Component" il faut "import Component from ..."
Si tu "export Component" if faut "import { Component } from ..."

J'ai vu cette réponse sur StackOverflow, j'ai essayé mais aucune modification du message d'erreur. Normalement les composants sont "export default" et fonctionne très bien coté IOS. J'ai vraiment plus d'idée

Dans ta fonction MainApp, dégage les composants 1 par 1 pour trouver ceux qui sont problématique
Une fois que t'as trouvé celui qui pose problème, va dans le fichier de ce composants et réduit les lignes de code petit à petit

Tu cerneras l'erreur

Y'a que ça à faire, ça me rend fou ptn. J'ai peut être 40 composants et 50 files à check https://image.noelshack.com/fichiers/2017/05/1485992280-risitassuicidelarme.png

Jsppd
Jsppd
Niveau 31
09 mai 2024 à 22:04:24

tu as essayé de debug avec chatgpt/claude ? car je veux pas être méchant, j'ai pas lu, mais pour coder en react et utiliser l'IA au quotidien, peu importe ton erreur tu vas avoir une solution rapidement, compréhensible et claire de chatgpt/claude, par contre sur le 18 25 j'ai des doutes :rire:

loyyePrintf
loyyePrintf
Niveau 5
09 mai 2024 à 22:08:00

Le 09 mai 2024 à 22:04:24 :
tu as essayé de debug avec chatgpt/claude ? car je veux pas être méchant, j'ai pas lu, mais pour coder en react et utiliser l'IA au quotidien, peu importe ton erreur tu vas avoir une solution rapidement, compréhensible et claire de chatgpt/claude, par contre sur le 18 25 j'ai des doutes :rire:

Si je suis venu ici pour demander c'est que j'ai déjà tenté de debug via chatgpt / StackOverflow / gtihub issues. Je suis foutu https://image.noelshack.com/fichiers/2017/05/1485992280-risitassuicidelarme.png

Message édité le 09 mai 2024 à 22:09:29 par loyyePrintf
loyyePrintf
loyyePrintf
Niveau 5
09 mai 2024 à 22:12:38

Update : RecordingProviderContext est une partie du problème. Merci @[OwO] https://image.noelshack.com/fichiers/2017/12/1490295454-jesuslove.png

Sous forums
  • Religion
La vidéo du moment