interface A {
q: number
w: string | undefined
}
сделать
interface A {
q: number
w?: string
}
По-моему ты всё правильно сделал...
я имею ввиду напимать type который так делает interface A { q: number w: string | undefined } type MakeOptional<T> = // code type B = MakeOptional<A> // { q: number w?: string }
Ну, надо как минимум указать, какое поле сделать опциональным. А дальше понятно
а нельзя сделать чтобы через conditional type он проверял есть ли у поля undefined и если есть то делал поле optional
Получилось так, ну знаю оптимальное ли это решение, но по крайней мере вроде работает https://www.typescriptlang.org/play?#code/KYDwDg9gTgLgBDAnmYcCqA7AJsAZgSw2CwGlhEBnAHgBUA+OAXjgG8AoOTuAbRLkLgBrchFxwaAXQBccAK7Y8hYnFAxg2CuN4S4Afjh8ZRAG7AoAbjYBfbsMSjxEy21CRYCZKgByEDJhwERKTk1PRMrBxcvPwYQiJikjLyAUpYKiBqGlokOvomZnAyJJY2dg6SzmxIKHAAsgCGwgDyYDD4vvUANrQMzCw8AAox6AqBxGSUPRK6MjTcAzpWcABkrIPDPn6jqROhdNJaC3BWbGyEalC49QDGqACCEVxwAI5GsgC2AEZmkZwA7jIKDAoIQAOZwAA+cm2QWsp2qqAAQuEGs1Wu0MF0qHc6GwcNdOvUoKhcPJrm1fAhgECABT1GSIgCUMmMEHwWHh1JgNP6rzgAGZjozTmwgA
Обсуждают сегодня