Oleg
А только размером бандлов нужно меряться?)
ну это считай, самый важный параметр.
Andrey
сделайте TODO приложуху на реакте и на svelte и сравните размеры бандлов. Удивитесь результату
ему про дх и тулзы, он про размеры бандлов найди материал юай на свелте, чекни, когда он появился, и в какой стадии разработки ради интереса
Андрей
Суть в том, что можно взять и перфоманс, и размер бандла, и полную переиспользуемость.
js2me ♨️
ну это считай, самый важный параметр.
Ну лично я считаю одним из самых важных
Aleksey
ребят, есть сообщетсво похожее по angular?
Aleksey
есть.
дай ссыль
Oleg
дай ссыль
и тебя вылечат.
Mr.Napcae
Кто сталкивался с react-native-vector-icons пользовательский шрифт работает на android но не пашет на ios (добавил ресурсы/info.plist/build phases) И всеравно показывается значок вопроса вместо иконки куда копать?
Aleksey
Андрей
Суть в том, что можно взять и перфоманс, и размер бандла, и полную переиспользуемость.
И самое весёлое в том, что наш стейт-менеджер - это будет единственной частью рантайма. Всё остальное превратится в вызовы DOM-api. Короч, реакту есть ещё куда расти. И расти очень сильно.
Алексей
Вдом помогает патчить дом только в одном случае - когда компонент зависит не только от своих пропсов(читай не чистая функция). В остальных нам достаточно изменившегося стейта в стейт-менеджере, чтобы сказать, что вёрстка будет другой.
Не совсем так. Virtual DOM позволяет относительно эффективно патчить DOM без наблюдением за изменениями данных. Но если есть нормальная и эффективная реактивная система, которая позволит отследить какая часть нашего стейта и пропсов изменилась и какие части DOM нужно обновить, то Virtual DOM уже становится лишним и не нужным (и React кстати тоже). Осталось только построить такую систему, но тут всё упирается в такую замечательную вещь как JS. В ES5 такое в принципе невозможно без адовых костылей. В ES6 вроде как есть прокси, но я правда не уверен, что с ними всё гладко выйдет. Svelte решил не париться и сделал весьма ограниченную статическую систему отслеживания изменений. Поэтому там надо через операторы присваивания менять данные, забыв к примеру про все мутабельные методы массивов.
Андрей
Не совсем так. Virtual DOM позволяет относительно эффективно патчить DOM без наблюдением за изменениями данных. Но если есть нормальная и эффективная реактивная система, которая позволит отследить какая часть нашего стейта и пропсов изменилась и какие части DOM нужно обновить, то Virtual DOM уже становится лишним и не нужным (и React кстати тоже). Осталось только построить такую систему, но тут всё упирается в такую замечательную вещь как JS. В ES5 такое в принципе невозможно без адовых костылей. В ES6 вроде как есть прокси, но я правда не уверен, что с ними всё гладко выйдет. Svelte решил не париться и сделал весьма ограниченную статическую систему отслеживания изменений. Поэтому там надо через операторы присваивания менять данные, забыв к примеру про все мутабельные методы массивов.
Осталось только построить такую систему, но тут всё упирается в такую замечательную вещь как JS. В ES5 такое в принципе невозможно без адовых костылей. В ES6 вроде как есть прокси, но я правда не уверен, что с ними всё гладко выйдет. Обоснуйте этот абзац. И да, прокси ненужны.
Андрей
const obj = es5observable({foo: 5}); obj.bar = 42; //упс, без проксей не можем отследить такое
А почему модель должна быть именно такой? Вы знакомы, к примеру, с эффектором? Хоть я и не считаю этот стейт менеджер серебрянной пулей, но он очень близок к идеалу c точки зрения API.
Алексей
Потому что с такой моделью получается самый краткий и самый понятный код. Без дополнительных библиотек для иммутабельности, без каскада спредов и без искусственных ограничений.
Алексей
state.foo.bar++; vs return {...state, foo: {...state.foo, bar: sate.foo.bar + 1}}
Андрей
state.foo.bar++; vs return {...state, foo: {...state.foo, bar: sate.foo.bar + 1}}
Ознакомьтесь с эффектором, пожалуйста. Блин. Случайно удалил предыдущее сообщение.
444
Привет! Когда называю пропы camelCase для styled-компонентов, консоль вечно ругается. Это нормально?
444
А если одним словом, то вот так...
Алексей
Ознакомьтесь с эффектором, пожалуйста. Блин. Случайно удалил предыдущее сообщение.
Я в эффекторе могу мутабельно менять глубоко вложенные поля объектов?
Oruj
может кто будет знать почему componentDidUpdate не ловит изменение в props?
Oruj
по началу да. а как вызывается та функция то в console.log(id) попадают цифры
Alexandr
Вопрос. При обновлении списка вместо перерисовки происходит дублирование. Это возможно из-за одинаковых key?
Alexandr
Фильтрую и обновленный список закидываю в Стейт, передаю из стейта список в компонент для отрисовки
Алексей
Зачем тебе такие объекты?
А это уже совершенно другой вопрос. Затем что я хочу делать такой стейт, какой я хочу, мутабельный/иммутабельный, плоский/глубоко вложенный. Но эффектор, редакс и svelte достаточно сильно ограничивают в этом плане.
Alexandr
key дублируется
Андрей
А это уже совершенно другой вопрос. Затем что я хочу делать такой стейт, какой я хочу, мутабельный/иммутабельный, плоский/глубоко вложенный. Но эффектор, редакс и svelte достаточно сильно ограничивают в этом плане.
У любого решения есть ситуации, в которых оно сливает. Вопрос в том сколько этих кейсов и насколько они часто встречаются в работе. Поэтому я и спрашиваю зачем это нужно.
Алексей
И на самом деле все эти ограничения не по идеологическим соображениям введены, а чисто по техническим. Это то, о чём я говорил. И это то, зачем нужны те самые прокси.
Алексей
Почему?
Андрей
Почему?
Потому что это исключительно рантайм фича. Без выполнения кода ты не сможешь понять что в объекте происходит
Алексей
Потому что это исключительно рантайм фича. Без выполнения кода ты не сможешь понять что в объекте происходит
Если их использовать для стейт менеджера, то в объекте будет происходить тоже самое, что и без них.
Алексей
Ты будешь допиливать flow и тс для таких частностей?
function proxyObservable<T>(obj: T): T; Стейт менеджер на проксях не будут менять тип. Всё что было в объекте и так в нём остаётся.
Андрей
Алексей
Это в принципе не моя модель даже, а тупо mobx. Вроде в него даже прокси впихнули. И да, там computed свойства для зависимых полей.
Dmitry
в codesandbox прож реакт можно вклбчить ?
Andrey
не смей сомневаться в эффекторе. там лучше знают, как тебе делать. apple-style.
может уже хватит ёрничать? эти подсёры выглядят глупо
Андрей
Это в принципе не моя модель даже, а тупо mobx. Вроде в него даже прокси впихнули. И да, там computed свойства для зависимых полей.
Понял. Мне сама реализация мобыха не особо заходит. Слишком уж много говна в исходниках(
Алексей
Mobx ещё принципиально не способен нормально и без боли сынтегрироваться с реактом. Потому что по хорошему тут view фрейм/либа должны знать про стейт менеджер такого типа. И к примеру делать все компоненты observer
Артем
Ребят,а где можно глянуть как правильно отсылать данный из redux-form через axios?
Igor
Хэллоу. Настраивал конфиг prettier для того, чтобы у всех был единое форматирование и хочу отключить правило semi, какие могут быть подводные камни при минификации и сталкивался кто с проблемами в таком случае?
artalar
У кого-нибудь было такое что в componentDidMount рефка пустая… Не могу понять как так
artalar
Только на componentDidUpdate появляется
Looch
посоны, такой кейс делаю короче диспатч экшона в методе и в этом же сетоде запоускаю еще другой метод который зависит от данных которые должен посчитать селектор и вот в нем данные почему-то не обновленные
artalar
бывает из-за анимации
что за анимации?
Looch
что за анимации?
у меня такое было с модалом, проде у него cDM сработал но из-за транзишн анимации рефа еще не было
Vadim
У кого-нибудь было такое что в componentDidMount рефка пустая… Не могу понять как так
Если брать аналогию с хуками, то там тоже изначально реф пустая
Looch
redux-thunk
у меня вообще саги, но это не важно
Igor
У кого-нибудь было такое что в componentDidMount рефка пустая… Не могу понять как так
покажи рендер элемента, который ты пытаешься рефать
artalar
Там может null возвращаться, но это не должно быть никак связано
Igor
очень просто) У тебя элемент может рендерится позднее, чем когда срабатывает cdm
artalar
Действительно. Вот я слепой
Yanush
Всем привет, кто-нибудь работал с formik+yup?
Yanush
есть филд email - Он должен сначала провалидироваться по схеме, и если все ок - чекнуть это запросом на сервер
Yanush
проблема - ошибка исчезает из объекта errors при onBlur на любом другом филде
Лёша
проблема - ошибка исчезает из объекта errors при onBlur на любом другом филде
Наверное ты ошибку не передаешь пропами, происходит обновление формы, и соответственно ошибка исчезает
Yanush
ошибку я сетаю из form.setFieldError(fieldName, error)
Yanush
просто по любому onBlur формик чекает validationSchema и переписывает полностью объект с ошибками
Yanush
я пробовал ставить для этого филда ошибку через setStatus({[fieldName]:error}), но это костыль
Лёша
А ошибка с бека хранится в сторе?