feat(docs): README.md optimiert und technische Dokumentation ausgelagert
- README.md für Offline-Betrieb und Kundenserver überarbeitet (ohne npm install) - Benutzeranleitung und technische Themen nach /docs/guide/ ausgelagert - Neue Dateien: env.md, mock-data.md, webservices.md, redux-zustand.md, project-structure.md, dependencies.md, user-guide.md - Tabellenstruktur und Verlinkungen im README modernisiert - Fokus auf klare Trennung: Entwickler-Doku vs. Kundenbereitstellung
This commit is contained in:
72
docs/guide/mock-data.md
Normal file
72
docs/guide/mock-data.md
Normal file
@@ -0,0 +1,72 @@
|
||||
# 🧪 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.local` 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)
|
||||
Reference in New Issue
Block a user