Wie setzt man einen Standardwert für ein Parameterobjekt einer Funktion in TypeScript?
Hallo! Ich habe gerade angefangen, TypeScript zu lernen, und habe ein Problem mit Funktionsparametern, die Objekte sind.
Angenommen, ich habe eine Funktion, die ein Objekt mit Einstellungen entgegennimmt:
```typescript
function createUser(config: { name: string; age: number; isAdmin: boolean }) {
// ...
}
```
Ich möchte, dass der Parameter `config` optional ist, und wenn er nicht übergeben wird, sollen Standardwerte verwendet werden. In JavaScript würde ich das so machen:
```javascript
function createUser(config = { name: 'Guest', age: 18, isAdmin: false }) {
// ...
}
```
Aber in TypeScript funktioniert das nicht, weil der Typ von `config` definiert sein muss. Ich habe verschiedene Varianten ausprobiert:
1. Einfach den Standardwert angeben — TypeScript beschwert sich über einen Typkonflikt.
2. `Partial` verwenden — aber dann kann ich keine konkreten Standardwerte festlegen.
3. Alle Felder mit `?` optional machen — aber dann geht die Typstrenge verloren.
Hier ist ein Beispiel meines Codes, der nicht kompiliert: