Size: a a a

Love Frontend Chat

2020 July 09

A

Artur in Love Frontend Chat
Saydi
Я пишу тест контроллера. В котором вызывается внешняя апишка, после чего вызывается статик метод внутренного класса, мне нужно замокать и апишку и метод, пиздец запутался
какой-то не самый полезный тест получается
источник

A

Artur in Love Frontend Chat
я бы замокал апишку тупо, а метод нет
источник

S

Saydi in Love Frontend Chat
Ну я тестирию апишку саму, а не методы, которые она юзает. В идеале эти методы должны тестироваться отдельно
источник

c

cosmonaut in Love Frontend Chat
John Travolta
Збс
и чтобы утолить жажду надо пить горячий зеленый чай
источник

c

cosmonaut in Love Frontend Chat
кайф
источник

c

cosmonaut in Love Frontend Chat
cosmonaut
и чтобы утолить жажду надо пить горячий зеленый чай
прям горячий
источник

JT

John Travolta in Love Frontend Chat
Ага, я так работая летом на стройке в универе охлаждался, обливаясь горячей водой
источник

A

Artur in Love Frontend Chat
John Travolta
Суть в том, что я добавляю дочерние в дом по клику
А когда что-то меняю в одном из дочерних, вижу стейт в родителе тот, который был на момент добавления именно этого дочернего
ниче не понял)
источник

A

Artur in Love Frontend Chat
John Travolta
типа такого, все просто
function App() {
 const [someState, setsomeState] = useState([]);
 useEffect(() => console.log(someState));

 const change = () => {
   console.log(someState);
 }

 return (
   <ChildComponent change={change} />
 );
}

В ChildComponent я дергаю функцию change и внутри нее вызываю setsomeState(someState)

Но каждый раз, когда дергается функция change, внутри нее someState неправильный, хотя когда срабатывается useEffect, то вижу то, что ожидаю
попробуй useCallback(changefunc, [someState])
источник

A

Artur in Love Frontend Chat
функция по идее должна пересоздоваться итак
источник

JT

John Travolta in Love Frontend Chat
Artur
ниче не понял)
Да криво объяснил, уже парень помог вчера в личке)
Ошибка была в том вначале создавал массив, в котором были компоненты прям, а потом выводил все это
В таком случае инкапсулировались все функции внутри компонентов
А надо было и создавать и рендерить компоненты уже при непосредственном рендере, а в массиве хранить только их айди
источник

A

Artur in Love Frontend Chat
еще есть варик что в useEffect ты видишь будущий стейт из-за особенностей консоль лога
источник

A

Artur in Love Frontend Chat
понял
источник

JT

John Travolta in Love Frontend Chat
Artur
еще есть варик что в useEffect ты видишь будущий стейт из-за особенностей консоль лога
О, не знал такого, надо запомнить
источник

A

Artur in Love Frontend Chat
чтобы быть уверенным лучше выводить в консольку что-то типо json.stringify(something)
источник

JT

John Travolta in Love Frontend Chat
Ага, спс
источник

JT

John Travolta in Love Frontend Chat
Смотрю, что при использовании useState, useEffect рендер удваивается и ушестиривается, если еще в дочернем компоненте есть useState и useEffect
Как этого избежать? А то мне надо работать внутри дочерних с пропсами, а т.к. оно рендерится несколько раз, то инкремент на единицу превращается в инкремент на 6
источник

JT

John Travolta in Love Frontend Chat
читаю, что это типа ок поведение, но блин, я точно не один, которому это мешает
источник

c

cosmonaut in Love Frontend Chat
источник

JT

John Travolta in Love Frontend Chat
та это понятно, но проблемы не решает)
источник