Artem
Коллеги, подскажите, как вы получаете доступ к экземпляру реакта извне (например из консоли браузера) в версии 16.8
Roman
Всем привет. Тут пишут что shorturl.at/izDOY prerender.io с его fragment не работает уже. Выше ребята тут обсуждали что и prerender-spa-plugin не такой уж качественный. А не подскажите как у тинькова работает сайт на реакте и при нажатии ctrl + U сразу видно исходный код. У него как раз тот самый сложно настраиваемый SSR Caching + ATF Render? Поделитесь плиз статьей где можно про это почитать изучать. Нужно сайт как-то начать индексировать а со старым middleware(от prerender-node) это не очень удается Максимум 9 страниц в индексе хотя в сайтмапе 200
Anton
напрямую передается
а так? f(...args) ... read(...args)?
Eugene
🌚явное лучше неявного
Bohdan
а так? f(...args) ... read(...args)?
там очень долго вебпак собирает, что сказать хочешь?
Anton
там очень долго вебпак собирает, что сказать хочешь?
хочу сказать, что проблема скорее всего в arguments и лучше его не использовать
Artem
Обычный SSR - next.js вам в помощь
настроить пререндер - 15 минут, перевести свою аппу к сср-реди виду - минимум неделя
Bohdan
хочу сказать, что проблема скорее всего в arguments и лучше его не использовать
Конечно. Просто раньше все работало, проблема возникла вообще непонятно откуда. Рефакать все не вариант
Bogdan
подскажите, кто знает, у формика можно передать ф-ю валидации, validate={values => validate(values, step)} но там такой прикол, изначально ошибок в стейте его нету и при переключении шага, кнопку можно нажать, тоесть валидация начинает работать только тогда, когда хотя бы в одно поле введешь что то
Bogdan
isInitialValid: false, или, для сложных слуаев: isInitialValid: ({ validate, data }) => !Object.keys(validate(data)).length,
я ф-ю передал, но прикол в том, что пока не жмакнешь поле, она не отработает
modest
народ, в чем ошибка?
modest
modest
index-START.html:20 Uncaught TypeError: func.apply is not a function at Object.sayHi (index-START.html:20) at <anonymous>:1:8 (anonymous) @ index-START.html:20 (anonymous) @ VM1961:1
Александр
Не читаемый скрин
Anonymous
Ошибка в том, что это не реакт
Bogdan
isInitialValid: false, это в конфиг формика
ну передал, шаг переключил и кнопка не дизейблится isInitialValid={false}
modest
let bind = function(func, context){ let previousArgs = [].slice.call(arguments, 2); return function(){ let currentArgs = [].slice.call(arguments); let combinedArgs = [].concat.call(previousArgs, currentArgs); return func.apply(context, combinedArgs); } } Function.prototype.myBind = bind; const person = {name:"andrew"}; function sayHi(){return this.name}; person.sayHi = sayHi.myBind(person, {name:"blyads"})
modest
ну, это своя реализация bind.
Александр
Зачем? Ну и каким боком тут реакт?
modest
а на чем реакт блядь сделан?
modest
Тебе на позицию реакт дева могут такое задание дать
Александр
а на чем реакт блядь сделан?
Я не знаю, вам виднее, я просто заметил что тут чат по реакту и вопросы по реакту подразумеваются
modest
свой байнд сделать
modest
Это сообщество реакт-девелоперов
modest
которое может иметь и JS бекграунд
Anonymous
свой байнд сделать
ты делаешь person.apply
Александр
Вам в чат @js_ru
modest
Детская ошибка
modest
🅅aleriy
Тебе на позицию реакт дева могут такое задание дать
Если дадут такое задание - беги от таких идиотов
modest
Если дадут такое задание - беги от таких идиотов
Ну я тоже не понимаю такого. Просто. почему задело) Что час назад реализовывал - все сработало - был рад
modest
решил «еще раз проверить знания» , бо вроде все понял
modest
И вот
modest
но голова уже кипит, то в этом проблема
🅅aleriy
В реакт проектах за три года ни одного выражения с bind, apply не было
Looch
apply же намного быстрее спреда
Алексей
В реакт проектах за три года ни одного выражения с bind, apply не было
ты просто так это говоришь, или какой-то вывод из этого последует?
Bogdan
isInitialValid: false, или, для сложных слуаев: isInitialValid: ({ validate, data }) => !Object.keys(validate(data)).length,
прикол в том, что isValid есть, сразу он false, но когда в первый шаг все ввел, перешел на второй, он true и останется
Александр
В реакт проектах за три года ни одного выражения с bind, apply не было
apply иногда нужен всетаки, хотя в большинстве случаев его заменяет spread оператор
Sergey
В реакт проектах за три года ни одного выражения с bind, apply не было
то есть ты надеешься на транспиляцию стрелочных функций, вместо того, чтобы аккуратно собрать методы в одном месте?
Looch
По крайней мере так было раньше
Vladyslav 🍉
Подскажите пожалуйста, где почитать о реализации регистрации и авторизации с помощью api на реакте, только со стороны клиента
Александр
Он быстрее
Ну согласитесь это существенно, если только данная функция вызывается очень часто, если это какой-то обработчик вызываемый раз в минуту то лучше предпочту читаемось скорости
Алексей
вот уж точно не надо делать такие "оптимизации"
🅅aleriy
Ну несколько наносекунд разницы в производительности это то за что надо бороться
🅅aleriy
Потом сидеть часами и гадать почему код не правильно работает
Azamat
Про graphql есть чат?
Sergei
@graphql_ru
Василий
Привет вопрос про хуки состояния в примерах написано для count числа вот так const [count, setCount] = useState(initialCount); а есть нужно черех хуки объектом управлять ? то есть написать const [countObject, setCountObject] = useState(initialObject); и потом в каком нибудь обработчике сделать onClick =(count)=>{ countObject.count=count; setCountObject(countObject); } ???
Василий
как черех хуки объектом управлять?
Василий
то есть типа setCountObject(prevCountObject=>{ prevCountObject.count=123, return prevCountObject; ); ???
Oleg
ну если хочешь, можно так.
wolfe
setCount({...count,})
пример выше лучше
wolfe
ну если хочешь, можно так.
если по deps передавать так объект, то оно зациклится
Den
ты тут что ли самый умный?
умнее вопросы есть?
Василий
setCount({...count,})
а это значит, что он у связанного объекта countObject поле count обновит ?
Oleg
умнее вопросы есть?
если ты тут пришёл права качать - на фиг с монастыря со своими правилами.
wolfe
не передавай и всё.
ссылка на объект в функции, созданной хуком, будет неактуальной, если не ошибаюсь
Oleg
если объект.
Oleg
если простой тип - просто setCount(value)
Den
да.
бля иди нахй, без обид.
Василий
если простой тип - просто setCount(value)
так если сложный ? { count:123 }
Oleg
так если сложный ? { count:123 }
ну да. но непонятно, зачем объект с одним пропом.
Oleg
бля иди нахй, без обид.
ебать ты конченный, без обид.