Andrei
просто я понимаю почему так происходит,а вот чтобы ее фиксить-не приходилось)
Andrei
примного благодарен)
Andrei
задачка на логику: есть 2 числа, 1 меньше 1, а второй больше, как это понять?( то есть проверить, что это именно так), первое может быть меньше, а второе больше и наоборот, без кучи ифов)
Andrei
a-b>0?
нет. если а< 1, b>1 не сработает
Andrei
@reacttillidie и дальше что? у меня числа не -1 и 1, а 0.9 и 1.1. и мне надо понять, что у меня 0.9 и 1.1, а не 1.1 и 1.3
Andrei
желательно в одну операцию, ибо и так очень нагружен процесс(зумирование)
Andrei
" 1 меньше 1, а второй больше, "извини, нооо)цитата
Andrei
a*b<b?
b-всегда большее?
Andrei
Выполнить вычитание и оценить знак?
не известно изначально большее число
Dmitriy
не известно изначально большее число
Ну так по знаку и определишь какое было большее. Привели пару примеров ин и аута
Andrei
1.2 и 1.6- false. 0.9 и 1.2 -true 0.8 и 0.6- false
Sergey
Dmitriy
a<1&&b>1 ?
Andrei
Math.min, Math.max))
ну да) a*b<Math.max(a,b) но сам math.max большой
Andrei
a<1&&b>1 ?
нет) чисоа могут быть и наоборот(моя ошибка с примерами, извеняюсь)
Andrei
Math.max = function() { var max = Infinity * -1; for (var index = 0; index < arguments.length; index++) { var val = arguments[index]; if (val > max) { max = val; } } return max; }; функция math,max ) не самая лучшая идея использовать ее)
Andrei
Это будет нагруженная часть кода?
зумирование с расчетами математическими большими(центр, нормализация и тд) раз 50 в секунлу
Dmitriy
a<1&&b>1 ?
(a<1&&b>1)||(a>1&&b<1)
Dmitriy
Math.sign(a-1)+Math.sign(b-1) === 0
Александр
Dmitriy
🔥
Andrei
красиво) о таких методах даже не знал))
Andrew
Ребят, нубский вопрос по React. Надеюсь хелпанете. У меня есть HOC выглядит вот так
Andrew
Если я делаю так const ButtonAppBar1 = withButtonAppBar( <QuestionarieNavbar />, <Target />); то всё гут
Andrew
когда я рендерю таким способом <ButtonAppBar /> Но вот так почему-то не могу {ButtonAppBar}
Andrew
Это больше похоже на компонент, чем хок
Хм, а разве HOC не компонент, который выплевывает другой компонент?
Frontend Priest
Хм, а разве HOC не компонент, который выплевывает другой компонент?
Примерно да, но у тебя какой-то оверхед. Можно просто запилить компонент и не париться с хоками в хоках.
Andrew
Примерно да, но у тебя какой-то оверхед. Можно просто запилить компонент и не париться с хоками в хоках.
мне внутрь этого комопнента нужно передавать разные компоненты в зависимости от ситуации
Andrew
Поэтому и HOC
Andrew
А почему ты ожидаешь что он отрендериьься так?
Потому что у меня есть эта переменная внутри которой сам компонент
Danil
Я не знаю что за кейс у тебя, но можешь сделать так cloneElement(MyComp)
Danil
Но вообще правильно <MyComp/>
Danil
Чем не устраивает это?
Andrew
Мне нужно засунуть это внутрь render ф-и в роуте. Вот так
Andrew
Но если я делаю так, то вижу ошибку
Danil
Ок, тогда сделай свой HOC обычным компонентом, а компоненты которые ты хочешь в нем рендерить прокидывай в него через Render Props
Danil
Пример: <Content renderHeader={() => <Header/>} renderFooter={() => <Footer/>} />
Andrew
Я понял, спс. Думал об этом, скорее всего в конце-концов так и сделаю. Однако сам вопрос, почему оно сейчас не пашет остался
Danil
А вообще ты в HOC передаёшь не верно компоненты, нужно передавать переменные
Danil
withBla(Comp1, Comp2)
Danil
А внутри ХОКа уже <Comp1/>
Andrew
А вообще ты в HOC передаёшь не верно компоненты, нужно передавать переменные
а как тогда мне передать props вместе с переменной? Не очень хочется на каждый компонент с пропсами заводить переменную
Danil
в этой ситуации тебе все равно нужен отложенный рендер как у RenderProps
Danil
можно сделать так withBla(() => <Comp1/>, () => <Comp2/>) а внутри {arg1()} {arg2()} но это убого и лучше через renderPorps
Danil
можно еще уродлевее)) withBla(Comp1, Comp2, props1, props2 ) а внутри <Comp1 {…props1}/>
Andrew
И так,и так та же ошибка
Danil
точно, ты же через render делаешь, а возвращаешь результат выполнения ХОКа, а надо рендер возвращать
Danil
попробуй сделать так в роуте render={(props) => { const Component = withBla…. return <Component/> }
Andrew
тоже самое
Danil
покажи итоговое и в роуте и сам ХОК
Andrew
HOC
Andrew
роут
Danil
ну теперь ты с аргументами перестарался, сделай как были
Danil
в роуте имею ввиду когда прокидываешь
Andrew
Danil
зачем то обернул в массив, а второй обернул в функу…
Andrew
зачем то обернул в массив, а второй обернул в функу…
я оба в массив обернул, думал мб какие-то констраинты есть на такую запись компонент в аргументы функи. П,С. кстати, похоже это помогло, спс. По крайней, теперь у меня Maximum lenght Exceeded
Danil
да это должно помочь было, но делай нормально через renderProps и все
Danil
а еще у роута есть component вместо render, вот туда можно ХОК пихать, если я не ошибаюсь
Andrew
Не понимаю, зачем тогда в принципе ХОК функциональность, если по сути, пропсами можно добиться того-же
Danil
то есть по сути будет так component={MyComp}, в свою очередь withBla как раз и возвращает компонент
Danil
у тебя с помощью withBla генерируется компонент налету и в его замыкание будут все данные доступны
Danil
ты же не будешь писать такое const MyComp = withBla(…) return <MyComp someProps={…}} вот в это ситуации нужен render={…}
Andrew
я про эти
Danil
а ну да, тогда не получится через component, если надо прокидывать
Sergey
5кб гзип
в сумме
Sergey
:)
Dmitriy
Как вы с реактом то живёте)