b?: string} чтобы потом передать его в строку через new UrlSearchParams, но из-за знака вопроса после ключа, подразумевается, что значение может быть undefined и получается ошибка , а я хочу указать что этого ключа может и не быть вовсе, можно ли как-то это сделать?
Другими словами хочу динамически добавлять ключи в интерфейс в завимисти от наличия того или иного параметра
Код бы
ну как такогового его нет, вот примерно что получается enum SearchKeys { Page = 'page', KeyWord = 'keyword', Catalogues = 'catalogues', PaymentFrom = 'payment_from', PaymentTo = 'payment_to' } export interface SearchParams { [key in SearchKeys]: string; } Но в obj = {} as SeaкchParams я собираюсь динамически добавлять параметры, то есть возможно в нем будет Page и тд, а возможно и нет
https://t.me/ts_cool/96349
это понятно, не понятно в чем проблема
так вы определитесь ключи опциональные или могут быть undefined? это конечно похожие случаи, но если tsconfig настроен правильно то опциональному полю нельзя назначить undefined
именно опциональные хотел
exactOptionalPropertyTypes этот флаг поможет, но тут еще вопрос откуда данные попадают, одно дело если сами заносите и другое если например с бэка приходят
Обсуждают сегодня