Size: a a a

2020 November 12

CM

Chingiz Mamiyev in pro.js
Не, это не реально
источник

А

Алексей in pro.js
@victoria_uranium Вик, а Вик. А ты в настроении для тупых вопросов?
источник

t

th.witness in pro.js
Алексей
@victoria_uranium Вик, а Вик. А ты в настроении для тупых вопросов?
Тут много и других разработчиков 🤔
источник

А

Алексей in pro.js
th.witness
Тут много и других разработчиков 🤔
Так это. Страшно
источник

А

Алексей in pro.js
В общем это. Кто-то где-то как-то говорил, мол под реакт норм заходит ФП. Вроде даже литературу видел "ФП на реакте". Что в нем такого особенного, из-за чего именно ФП реакту подходит?
источник
2020 November 13

В

Виктория in pro.js
Алексей
В общем это. Кто-то где-то как-то говорил, мол под реакт норм заходит ФП. Вроде даже литературу видел "ФП на реакте". Что в нем такого особенного, из-за чего именно ФП реакту подходит?
Декларативность и композиционный характер React-компонентов
источник

FL

First Last in pro.js
А зачем тебе это?
источник

В

Виктория in pro.js
АнтиДжава?
источник

FL

First Last in pro.js
Во-первых: сама по себе задача весьма и весьма странная...
Во-вторых: зачем тебе выводить тип только для 1 аргумента? А второй тс сам выведет...не понимаю вообще смысла
источник

Prikolist Начрэл... in pro.js
First Last
А зачем тебе это?
Что бы делать так:
Registry<IBlockNameRegistry>('BlockName', {
 Button,
 Icon
})
источник

FL

First Last in pro.js
Prikolist Начрэл
Что бы делать так:
Registry<IBlockNameRegistry>('BlockName', {
 Button,
 Icon
})
А в функции сделаешь any или на каждый тип условие?
источник

Prikolist Начрэл... in pro.js
Не понял вопрос
источник

FL

First Last in pro.js
А я не понял примера)
источник

FL

First Last in pro.js
Почему ты в сигнатуру функции не пихнешь IBlockNameRegistry?)
источник

Prikolist Начрэл... in pro.js
У меня есть интерфейс вида

{
 Button: ComponentType<IButtonProps & IButtonViewDefault & IButtonWidthMax>;
 Icon: ComponentType<IIconProps & IIconGlyphUnfoldMoreProps>;
}

Мне нужна функция, которая будет делать с этим что-то и будет проверять соблюдение интерфейса
источник

FL

First Last in pro.js
type Button = ComponentType<IButtonProps & IButtonViewDefault & IButtonWidthMax>
type Icon = ComponentType<IIconProps & IIconGlyphUnfoldMoreProps>

interface Props {
 button: Button
 icon: Icon
}

const f = ({button, icon}: Props) => console.log(button, icon)

f({button, icon})
источник

Prikolist Начрэл... in pro.js
Там более сложная ситуация, компоненты могут быть шире интерфейса, для проверки нужно извлекать свойства из ComponentType и работать с ними
источник

FL

First Last in pro.js
Prikolist Начрэл
Там более сложная ситуация, компоненты могут быть шире интерфейса, для проверки нужно извлекать свойства из ComponentType и работать с ними
interface Props<T, E> {
 button: T
 icon: E
}

f({button, icon}: Props<SomeButton, SomeIcon>)
источник

FL

First Last in pro.js
Точнее
, тебе наверное лучше так

interface Props<T, E> {
 button: T
 icon: E
}

const f = <T, E>({button, icon}: Props<T, E>) => {
 console.log(button, icon)
}

f({button: 'q', icon: 's'})
источник

Prikolist Начрэл... in pro.js
Prikolist Начрэл
Подскажите с TS.

У меня есть вот такая задача (в упрощении):
function qwe <X, Y>(id: string, data: Y) {
 return null;
}

qwe<Symbol>('qq', 123)

Код не корректный, компилятор запрашивает в вызове функции указание 2 типов. А мне нужна возможность указать только один тип, а второй что бы был взят из аргумента. Это возможно в TS?
Бамп
источник