опций компоненту в функции выводились они?
options = Option[]
<Select options={options} onChange={(value) => {}}
где value должен быть Option
что-то вроде interface SelectProps<T> { options: T[] onChange: (value: T) => void } function Select<T>(props: SelectProps<T>){ // код компонента }
Сейчас попробую
Property 'id' does not exist on type 'T'. Можешь подсказать как это разрулить?
export function Select<T>(props: Props<Global.SelectOption & T>) {
interface BaseOption { id: string // другие пропсы которые ты используешь в компоненте } interface SelectProps<T extends BaseOption> { options: T[] onChange: (value: T) => void } function Select<T extends BaseOption>(props: SelectProps<T>){ // код компонента }
отта пасиба канешна
а еще можешь подсказать Codes.RiskType' does not satisfy the constraint 'SelectOption'. что за ограничения?
по всей видимости в типе Codes.RiskType нет тех свойств что описаны в SelectOption
не понимаю, в чём твоя проблема. вот, держи акула будет недоволен
проблема в том, что я не могу текущие типы подружить
Собери пример в песочнице
это кажется нереальным
Тебе кажется
нет, тут всякие либы вперемешку с враперами и прочее
Ну вот пока будешь отделять зерна от плевел, сам найдёшь решение. Так песочницы и работают)
там написано, что Codes.RiskType не похож на объект с полями id и value
RiskType можно сделать только значением для value внутри SelectOption?
Я указываю
ты указываешь Codes.RiskType. что это?
enum
а должен быть ТИП ЗНАЧЕНИЙ, КОТОРЫМИ ОПЕРИРУЕТ СЕЛЕКТ
терпения вам не занимать))
да я понимаю это, меня больше каша текущая путает
ну разбирайся в каше. раз у тебя нет проблем с пониманием дженериков, пытайся понять свой код
"мой"
если ты с ним работаешь, то он твой. твой код — не обязательно тобой написанный
🧙🏿♂️
Эт да
вот так пришлось сделать riskTypes: Global.SelectOption<Codes.RiskType>[]; opportunityOriginTypes: Global.SelectOption<Codes.OpportunityOrigin>[]; options: Global.SelectOption<T>[]; <Select<Codes.OpportunityOrigin>
Заебись, по итогу в селекте вообще другой объект отображался
Обсуждают сегодня