- 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
80 lines
2.2 KiB
Markdown
80 lines
2.2 KiB
Markdown
# 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: true` dans `commonjsOptions`
|
|
- ✅ Ajout de `format: 'esm'` dans `esbuildOptions` de `optimizeDeps`
|
|
- ✅ Ajout de `interop: 'compat'` dans `rollupOptions.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
|
|
|
|
```bash
|
|
# 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
|
|
|
|
```bash
|
|
# 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 :
|
|
|
|
```typescript
|
|
// 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
|
|
|
|
1. Ouvrir la console du navigateur (F12)
|
|
2. Vérifier l'onglet "Console" pour l'erreur exacte
|
|
3. Vérifier l'onglet "Network" pour voir quel fichier est chargé
|
|
4. 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_modules` qui 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
|