Dies wird als Union - Typ in Typoskript.
Ein Vereinigungstyp beschreibt einen Wert, der einer von mehreren Typen sein kann.
Pipe ( |) wird verwendet, um jeden Typ zu trennen. Dies ist beispielsweise number | string | booleander Typ eines Werts, der a number, a stringoder a sein kann boolean.
let something: number | string | boolean;
something = 1;
something = '1';
something = true;
something = {};
Spielplatz
Und hier ist ein Beispiel ähnlich dem in der Frage:
class Test1 {
public a: string
}
class Test2 {
public b: string
}
class Test3 {
}
let x: (typeof Test1 | typeof Test2)[];
x = [Test1];
x = [Test1, Test2];
x = [Test3];
xist ein Array, das Konstruktoren von Test1 oder enthält Test2 .
somethingweiß ich also, welchen bestimmten Objekttyp es derzeit enthält? Ich wünschte, diese Antwort hätte versucht, dies auch zu beantworten.