- Alle Hinweise in Markdown-Dateien aktualisiert: Verwendung von `.env.production` und `.env.development` statt `.env.local` - Footer-Abschnitte mit „Zurück zur Übersicht“-Link in allen relevanten `/docs/`-Dateien ergänzt - Inhaltliche Korrekturen und Ergänzungen in Architektur-, Setup-, FAQ-, und Mockdaten-Dokumentation - Inhaltsverzeichnis in `README.md` aktualisiert und funktionierende relative Links in Unterverzeichnissen sichergestellt - Ziel: bessere Lesbarkeit, Navigation und Klarheit für neue Entwickler
78 lines
1.8 KiB
Markdown
78 lines
1.8 KiB
Markdown
# 🧪 Mockdaten-Modus (`NEXT_PUBLIC_USE_MOCKS=true`)
|
|
|
|
Dieses Projekt unterstützt einen optionalen **Mockdaten-Modus**, um Entwicklung und Tests ohne
|
|
Backend/Webservice durchzuführen.
|
|
|
|
---
|
|
|
|
## 🔍 Zweck & Nutzen
|
|
|
|
- Schneller Entwicklungsstart ohne aktive Serververbindung
|
|
- Stabilere Testszenarien mit festen JSON-Daten
|
|
- Vollständige Isolation von Backend-Fehlern während der UI-Entwicklung
|
|
|
|
---
|
|
|
|
## ⚙️ Aktivierung
|
|
|
|
Mockdaten werden aktiviert durch folgende Umgebungsvariable:
|
|
|
|
```env
|
|
NEXT_PUBLIC_USE_MOCKS=true
|
|
```
|
|
|
|
Diese Variable wird in `.env.development` gesetzt und **nicht** für die Produktionsumgebung
|
|
verwendet.
|
|
Im Produktivbetrieb steht:
|
|
|
|
```env
|
|
NEXT_PUBLIC_USE_MOCKS=false
|
|
```
|
|
|
|
---
|
|
|
|
## 🧩 Funktionsweise
|
|
|
|
Wenn `NEXT_PUBLIC_USE_MOCKS=true` gesetzt ist:
|
|
|
|
- Statt realer Webservices werden Endpunkte unter `/pages/api/mocks/webservice/*.js` aufgerufen
|
|
- Diese geben vorbereitete JSON-Dateien unter `/mockData/*.json` zurück
|
|
|
|
---
|
|
|
|
## 📂 Beispiel-Aufruf im Mockmodus
|
|
|
|
```ts
|
|
// Beispiel aus fetchGisSystemStaticService.js
|
|
const url = useMocks
|
|
? "/api/mocks/webservice/GisSystemStatic"
|
|
: `${apiUrl}/WebServiceMap.asmx/GisSystemStatic`;
|
|
```
|
|
|
|
---
|
|
|
|
## 🛡️ Sicherheit & Versionskontrolle
|
|
|
|
- Alle `.json`-Dateien im Ordner `/mockData/` sind über `.gitignore` vom Repository ausgeschlossen
|
|
- So wird verhindert, dass versehentlich sensible Testdaten veröffentlicht werden
|
|
|
|
---
|
|
|
|
## 💡 Hinweise
|
|
|
|
- Mockdaten sollen nur die wichtigsten API-Schnittstellen simulieren
|
|
- Bei Änderungen am Datenmodell sollten auch die Mockdaten aktualisiert werden
|
|
- Eine zentrale Thunk- & Service-Logik entscheidet automatisch, ob `mock` oder `real`
|
|
|
|
---
|
|
|
|
## 🔗 Weitere Informationen
|
|
|
|
- [📄 Umgebungsvariablen](env.md)
|
|
- [📄 Webservices im Detail](webservices.md)
|
|
- [📄 Zustandverwaltung (Redux)](redux-zustand.md)
|
|
|
|
---
|
|
|
|
[Zurück zur Übersicht](../README.md)
|