extends boolean = true>(id: number, autoCreate: boolean = true): T extends true ? string : string | undefined => {
const result = cringe.get(1);
const text: string = '123';
cringe.set(1, text);
return result ? result : autoCreate ? text : undefined;
}
T extends true не является типовым предикатом.
измени код const getCringe = <T extends boolean = true>(id: number, autoCreate: boolean = true): T extends true ? string : string | undefined => {
и скажешь как пройшло
ой я кажись не то написал..
не знаю, я 4 раз перепроверяю где тут вещь которую мне над изменить
const cringe: Map<number | string, string> = new Map(); const getCringe = <T extends boolean = true>(id: number | string, autoCreate: boolean = true): T extends true ? string : string | undefined => { const result = cringe.get(id); const text: string = '123'; cringe.set(id, text); return result ? result : autoCreate ? text : undefined; };
const cringe: Map<number, string> = new Map(); const getCringe = <T extends boolean = true>(id: number, autoCreate: boolean = true): T extends true ? string : string | undefined => { const result = cringe.get(id); const text: string = '123'; cringe.set(id, text); return result !== undefined ? result : autoCreate ? text : undefined; };
просто попробуй
Обсуждают сегодня