Är det (`?:`) typescript ternära operatorn
Jag såg koden nedan i ett TypeScript-exempel:
export interface EjectTaskOptions extends BuildOptions {
force?: boolean;
app?: string;
}
Vad betyder ?:? Är det en ternär operator (med endast falskt villkor) eller något annat?
Svar #1
Operatorn ? anger att egenskapen kan vara nullable/valfri. Det betyder bara att kompilatorn inte kommer att kasta ett fel om du inte implementerar denna egenskap i din implementation.
Svar #2
Du kan använda ??-operatorn!
const test: string = null;
console.log(test ?? 'none');
Detta kommer att skriva ut 'none' eftersom test är null. Om det finns ett värde för test kommer det att skriva ut det. Du kan prova det här playground TypeScript.
