Sergey
А ещё проблема в том, во измененный компонент, каскадом свалит сотни снепшотов. И как бы...
Igor
Есть react-sortable-hoc, есть большой список с тяжелой версткой 300+, onSortEnd вызывается через определенное время, есть какой-то способ выхватить событие ПЕРЕД этим коллбэком, чтобы добавить лоадер пока проходит операция расчетов, сталкивался кто с этим?
Sergey
А можно поподробнее про применение снепшотов для теста парсеров и проверки типов? Я был уверен что снепшоты это исключительно про реакт компоненты
Ну. У тебя есть парсер URL. Принимает на вход URL на выходе даёт объект с частями. Вот здесь снепшоты просто огонь.
Sergey
Ну и аналогичная ситуация с парсерами языков
Андрей
А можно поподробнее про применение снепшотов для теста парсеров и проверки типов? Я был уверен что снепшоты это исключительно про реакт компоненты
Маленький совет: если возникают вот такие вопросы, то в первую очередь лучше идти в гугл. Тебе повезло, что твоему собеседнику не лень объяснять что гуглится на раз-два, и он тебя не послал.
Sergey
Ага, понятно, а с типами что?
В эффекторе так проверки работают. То есть берём функцию вызываем ее с кривыми типами, например. А тесты за нас запустят проверку типов и запишут в снепшот. Так можно проверять изменения в системе типов, когда обновляем ее. Или же меняем свои типы
Sergey
Ага, понятно, а с типами что?
https://github.com/zerobias/effector/blob/2397fd57c5c08993d693876832c54f856e9b56d3/src/types/__tests__/effector/forward.test.js
Sergey
Sergey
Sergey
Нужно так же проверить что система типов не пропускает кривые типы
Александр
Вернее убегаемся что есть ошибки определённые когда неаерные типы подставляем
Александр
Спасибо, прикольно, про тесты типов было интересно услышать.
Vitaliy
Всем привет, вопрос. Есть много похожих страниц с таблицами, у каждой таблицы разное апи, вопрос такой, как лучше сделать, использовать для каждой таблицы свой стор сагу и т д, или сделать общею логику, а может быть вообще не хранить эти данные в сторе?
Vitaliy
Делал подобный кейс , общий редюсер
а если на одной из страниц нужно будет выводить сразу две таблицы?)
N
State = { list:[]}
N
Только сделай переменную типа resource , это будет твоим наименованием таблиц. И возможно еглпоинтов для апи , типа users , cities и тд
Юрий
а как лучше делать валидацию форм? у меня форма на добавления нового юзера, я с импутов собираю данные и кладу в стейт, а при сохранении, проверяю что-бы все поля были заполнены, хочу сделать 2 проверки на пароль и эмейл, будет норм если я создам 2 функции с регулярками и которые буду дергать перед отправкой?
N
И потом делаешь draft[resource] = action.payload
Юрий
Тип того. Можешь посмотреть на yup
формик не обьязательно юзать или желательно с ним?
Ivan
формик не обьязательно юзать или желательно с ним?
Лучше использовать. Его или final-form.
Ilya
Лучше использовать. Его или final-form.
лучше Formik... ИМХО, не холивара для, просто "дружеский совет" не связываться с Final Form. даже API практически идентичный - но качество исполнения и ожидаемость поведения (опять таки ИМХО - значительно лучше + подвижки в сторону API м использование хуков и т.д.)
Ilya
Хз, я формик не пробовал, фф устраивает больше чем полностью.
Array Fields ? тоже нормально себя чувствуют ? (дисонанса по initial values нет ? что для массива полей надо инстанцировать пустой объект чтобы видеть форму, а для базовой формы - нет, и т.д.) так же смею предположить что формы не очень большие в пределах 10-ти не составных полей ?
Ilya
а ты юзаешь формик в паре с yup или сам проверки пишешь?
я знаю о том что это очень попудлярная связка - и уживаются они весьма эффективно, ккак минимум 2 мойх коллеги-знакомых рапортуют что "взлетает и летит", конкретно я вынужден "есть кактус с Final Form" доставшийся по наследству и по этому как раз таки (понаступав на грабли - его никому не советую). Но планируем от FF отказываться это уже общее мнение команды - что это решение гавеное.
Ilya
у final form хуки появились раньше формика
я разве обозначал кто из них "раньше папа", тем более как преимущество - я сказал что там подвижки есть и есть реализация ? Если мне память не изменяет именно с Вами мы холиварили за Formik VS Final Form Коллега, я не имею своей целью - это повторять... я несколько раз акцентирорвал что это мое мнение (ИМХО), я не претендую на истину в последеней инстанции, я уже обозначал тут ранее выявленные проблемы и неочевидное поведение Final Form, я старался быть объективным :)
▲rtemiy
быстро выдохлись
Anonymous
Есть какие-нибудь годные аналоги monet.js?
Anonymous
luxon date-fns day.js
monet.js а не moment.js
GrafMine
Ребят подскажите ваши мысли по этому вопросу: "Как бы вы писали свои программы чтобы улучшить их качество - есть ли какие либо метрики которые вы могли бы применить чтобы дать нам понимание о качестве кода который вы пишете?" - вопрос был от ейчара который слегка загрузил меня, и мне стало интересно какие есть еще мысли по этому вопросу, как лучше на него было бы ответить :)
Anonymous
Есть какие-нибудь годные аналоги monet.js?
Сам нашёл https://github.com/sanctuary-js/sanctuary например
Egor
Ребят подскажите ваши мысли по этому вопросу: "Как бы вы писали свои программы чтобы улучшить их качество - есть ли какие либо метрики которые вы могли бы применить чтобы дать нам понимание о качестве кода который вы пишете?" - вопрос был от ейчара который слегка загрузил меня, и мне стало интересно какие есть еще мысли по этому вопросу, как лучше на него было бы ответить :)
Договорился с командой по поводу стиля и используемых технологий Это улучшит качество внесения изменений в уже написанный код, ведь с ним в основном бывают трудности Если говорить только о технических аспектах, то это использование статической типизации и тестирование
Anonymous
Кто вообще как с null’ами и undefined’ами борется, кроме монад?
Sergei
разве можно улучшить качество картины да винчи или киноленту чаплина? то же самое с моим кодом.
GrafMine
блин ну это прям филосовский ответ)) ну тоже красиво сьехать можно))
Sergey
Shallow?
А смысл
Sergey
Или в чем вопрос
invasion
Сорян за оффтоп, камрады. Что такое digital-продакшен? Это когда дохера проектов с нуля пишут люди?
Anonymous
Кто подключал MQRabbit к react есть у кого то примеры?
Looch
Зачем тебе rabbit в реакте ? 🧐
Anonymous
что сделать чтобы с тайпскрптом заработали styled-bootstrap-components? я не сильно спец в тайпскрипте, типов для этого пакета не нашёл, надо руками их писать? (сорри если где то ерунду спросил)
Anonymous
Зачем тебе rabbit в реакте ? 🧐
Бэкенд говоорит типа будет туда кидать сообщения и типа я на фронте должен взять их
🦜
Зачем тебе rabbit в реакте ? 🧐
меня тоже интересует как это связанно с реактом
Anonymous
Ну да через сокеты. Но я должен взять из рэббита сообщения
Looch
Бэкенд говоорит типа будет туда кидать сообщения и типа я на фронте должен взять их
У тебя бэк явно делает что-то неправильно, rabbit в основной юзают для общения микросервисов между собой а не сообщения прям на фронт слать
Anonymous
У тебя бэк явно делает что-то неправильно, rabbit в основной юзают для общения микросервисов между собой а не сообщения прям на фронт слать
Смотрите ситуация какая. На фронте нажимается кнопка рассчитать. Потом бэк рассчитывает а в это время фронт должен показывать сообщения которые генерит бэк. Пока он не закончит все
Ivan
Ну да через сокеты. Но я должен взять из рэббита сообщения
тебе бэк должен предоставить сокет, который будет транслировать тебе сообщения из рэббита но это какое-то уебанство, честно говоря
Looch
Обычный ws или даже http и long pulling
Anonymous
Смотрите ситуация какая. На фронте нажимается кнопка рассчитать. Потом бэк рассчитывает а в это время фронт должен показывать сообщения которые генерит бэк. Пока он не закончит все
такое вебсокетами делается обычно, но его постоянно надо открытым держать, но и с рэбитом один фиг тоже конекшен постоянно надо поддерживать
Anonymous
ну ресурсы чоково
🦜
взял сокеты, накатил на них json-rpc и бек в таком же формате пусть пушит сообщения по сокетам
Anonymous
ну хз какая у них нагрузка там, можт рэббит на отдельном серваке крутится, бэк в очередь кидает сообщение и пока ему говорит
Anonymous
типо открытый сокет это конечно просто номер дескрпитора в ядре, но я всё равно хз можт у них там турбохайлод
Anonymous
('ramda-fantasy').Maybe ?
>кроме монад да и я так подумал, что для моих задач это оверинжиниринг, есть тс 3.7 и два новых оператора, которые решают мои проблемы