- Ajouter fallback pour Swagger UI si doc.json ne fonctionne pas - Améliorer message d'erreur avec bouton pour ouvrir Swagger UI directement - Les fonctionnalités API Keys et Usage Stats sont maintenant complètes et fonctionnelles - Tous les onglets de DeveloperPage sont maintenant implémentés
2.2 KiB
2.2 KiB
Fix: "module is not defined" Error
Problème
L'erreur Uncaught ReferenceError: module is not defined dans index.js:6 indique qu'un fichier utilise la syntaxe CommonJS (module.exports) dans un contexte ES modules.
Solutions Appliquées
1. Configuration Vite (vite.config.ts)
- ✅ Ajout de
esmExternals: truedanscommonjsOptions - ✅ Ajout de
format: 'esm'dansesbuildOptionsdeoptimizeDeps - ✅ Ajout de
interop: 'compat'dansrollupOptions.output
2. MSW (Mock Service Worker)
- ✅ Ajout d'un try/catch dans
enableMocking()pour éviter que MSW bloque l'app - ✅ MSW est désactivé par défaut (nécessite
VITE_USE_MSW=1)
3. Code PWA
- ✅ Correction de l'erreur "unreachable code after return" dans
pwa.ts
Si l'erreur persiste
Option 1: Désactiver MSW complètement
# S'assurer que MSW n'est pas activé
unset VITE_USE_MSW
# ou
export VITE_USE_MSW=0
Option 2: Vider le cache et redémarrer
# Arrêter le serveur
pkill -f vite
# Vider le cache Vite
rm -rf node_modules/.vite
rm -rf dist
# Redémarrer
cd apps/web
npm run dev
Option 3: Vérifier les chunks générés
L'erreur pourrait venir d'un chunk généré. Vérifier dans la console du navigateur quel fichier exact cause le problème.
Option 4: Désactiver le service worker MSW
Si MSW est nécessaire, on peut désactiver son service worker :
// Dans src/main.tsx, modifier enableMocking() pour ne pas utiliser le service worker
await worker.start({
onUnhandledRequest: 'bypass',
// Ne pas utiliser serviceWorker si problème
// serviceWorker: {
// url: '/mockServiceWorker.js',
// },
});
Vérification
- Ouvrir la console du navigateur (F12)
- Vérifier l'onglet "Console" pour l'erreur exacte
- Vérifier l'onglet "Network" pour voir quel fichier est chargé
- Vérifier l'onglet "Sources" pour voir le code source du fichier problématique
Notes
- L'erreur pourrait aussi venir d'une dépendance dans
node_modulesqui n'est pas correctement transformée - Vérifier que toutes les dépendances sont à jour :
npm update - Si le problème persiste, il pourrait être nécessaire de mettre à jour Vite ou certaines dépendances