Die einzige Lösung, die vollständig typsicher ist, ist diese ist aber ein wenig wortreich und zwingt Sie, mehrere Objekte zu erstellen.
Si usted muss Erstellen Sie zunächst ein leeres Objekt und wählen Sie dann eine der beiden Lösungen. Denken Sie daran, dass Sie jedes Mal, wenn Sie as
verlieren Sie an Sicherheit.
Sicherere Lösung
Die Art der object
es sicher innerhalb getObject
was bedeutet object.a
ist vom Typ string | undefined
interface Example {
a: string;
b: number;
}
function getObject() {
const object: Partial<Example> = {};
object.a = 'one';
object.b = 1;
return object as Example;
}
Kurze Lösung
Die Art der object
es nicht sicher innerhalb getObject
was bedeutet object.a
ist vom Typ string
noch vor seiner Abtretung.
interface Example {
a: string;
b: number;
}
function getObject() {
const object = {} as Example;
object.a = 'one';
object.b = 1;
return object;
}