Size: a a a

JavaScript.Ninja

2021 April 19

AI

Arthur Irgashev in JavaScript.Ninja
у меня где-то пример есть, я мб могу поискать, но это уже не сегодня
источник

AM

Alex Makarov in JavaScript.Ninja
ты либу свою не на базе твикнутого cra делаешь надеюсь? У нее ж кастомный конфиг?
источник

AK

Anton Kalodzich in JavaScript.Ninja
Вопрос хороший, но в каких случая таки тогда надо использовать useCallback?
источник

VN

Vladislav Navrocky in JavaScript.Ninja
Когда я делал руками, то продолбался очень долго пока все костыли сошлись, при этом получил очень медленную компиляцию и отсутствие некоторых плюшек CRA. Когда я стал разбираться с этой кухней, то понял что в обозримое время не получится сделать что-то нормальное
источник

AI

Arthur Irgashev in JavaScript.Ninja
от кейса зависит. выше не нужен вообще

при передаче в дом ноды - как правило тоже. обычно нужно мемоизировать для передачи по дереву компонентов. если начинается много гемора с мемоизацией, то я просто выбрасываю хуки и пишу классами
источник

VN

Vladislav Navrocky in JavaScript.Ninja
Поэтому сейчас пробую варианты с CRA
источник

AM

Alex Makarov in JavaScript.Ninja
Ключевой вопрос: либа из которой ты хочешь чтобы было видно типы на cra или не на cra?
источник

VN

Vladislav Navrocky in JavaScript.Ninja
Либа не на CRA, только конечное приложение
источник

AM

Alex Makarov in JavaScript.Ninja
уф, а то я разное видел
источник

AM

Alex Makarov in JavaScript.Ninja
декларации либа эмитит и их не видно или не эмитит?
источник

AM

Alex Makarov in JavaScript.Ninja
в смысле .d.ts файлы есть или нет?
источник

VN

Vladislav Navrocky in JavaScript.Ninja
Ну вот к примеру один из рабочих проектов https://github.com/michaljach/modern-monorepo-boilerplate
источник

AI

Arthur Irgashev in JavaScript.Ninja
если у тебя монорепа, то для либы заведи свою сторибуку с тестами, девелопь их отдельно, а потом компилируй и подрубай в свой конкретный апп. так будет проще
источник

VN

Vladislav Navrocky in JavaScript.Ninja
Нет там как-то через babel собирается в tmp или в оперативе, короче никаких d.ts не появляется
источник

AM

Alex Makarov in JavaScript.Ninja
Мне уже не надо, у меня свое. Монорепа с тайпскриптом, либой и сторибуком смигрированная с пачки cra проектов.
источник

AI

Arthur Irgashev in JavaScript.Ninja
а ты настраивал генерацию тайпингов-то ?)
источник

AM

Alex Makarov in JavaScript.Ninja
В этом проблема а не в сборке твоих приложений.
источник

AM

Alex Makarov in JavaScript.Ninja
Бабель не генерит типы. Бабель "компилирует" javascript в typescript. То есть считает просто вырезает все тайпскриптовые конструкции. В результатах разумеется никакой информации по типам - нету.
источник

AI

Arthur Irgashev in JavaScript.Ninja
если мне память не изменяет, то оно не генерит само по себе тайпинги и нужно указывать это явно. но я давно уже с монорепами не работал, могу быть не прав
источник

AI

Arthur Irgashev in JavaScript.Ninja
в твоём package.json файлике на уровне либы
источник