Size: a a a

2020 September 24

K

Kамран in React Kyiv
Kамран
https://prnt.sc/un40zz

Подскажите, почему может не вызываться моя функция внутри компонента?
Вроде правильный мок передаю

const FormInputs = ({setEmail,setName,setText,setFileFormat,email,text,name}) => { <div>inputs....</div>
Сложно, не помочь?
источник

a

aaa in React Kyiv
не сложно
источник

K

Kамран in React Kyiv
aaa
не сложно
ага, действительно. Разобрался
источник

K

Kамран in React Kyiv
Kамран
ага, действительно. Разобрался
Нет, не разобрался.

Ребят, почему всё таки может не меняться велью у инпута?

Вот сам тест
https://prnt.sc/un5i7m
источник

DZ

Dmitry Zherebko in React Kyiv
Kамран
Нет, не разобрался.

Ребят, почему всё таки может не меняться велью у инпута?

Вот сам тест
https://prnt.sc/un5i7m
попробуй врапнуть в act
источник

K

Kамран in React Kyiv
Dmitry Zherebko
попробуй врапнуть в act
не помогает(
источник

DB

Dima Bildin in React Kyiv
А просто работает, когда вводишь текст в браузере?
источник

K

Kамран in React Kyiv
Dima Bildin
А просто работает, когда вводишь текст в браузере?
да, в браузере работает
Всё ок.
но в тестах такая вот дичь
источник

DB

Dima Bildin in React Kyiv
А точно тот инпут, что надо находит?
источник

K

Kамран in React Kyiv
Dima Bildin
А точно тот инпут, что надо находит?
да, я уже проверял.

Если в хтмл я статически задам велью 123

то и тут в тесты приходит 123
источник

K

Kамран in React Kyiv
Может из-за того что useState()  асинхронный...он не успевает это записать...ну или я не знаю, как-то так
источник

DB

Dima Bildin in React Kyiv
А там просто инпут?
источник

DB

Dima Bildin in React Kyiv
Kамран
да, я уже проверял.

Если в хтмл я статически задам велью 123

то и тут в тесты приходит 123
https://github.com/testing-library/react-testing-library/issues/642#issuecomment-617120348
вот тут пишут, что из-за material ui может быть не совсем так просто
источник

K

Kамран in React Kyiv
Dima Bildin
А там просто инпут?
               <input
                   className="common__input auto"
                   aria-label="name-input"
                   placeholder="Ваше имя"
                   onChange={e => setName(e.target.value)}
                   value={name}
               />
источник

K

Kамран in React Kyiv
у них тут будто есть все события мира, кроме onChange....эт норма?)
источник

SS

Serhey Shmyg in React Kyiv
Kамран
у них тут будто есть все события мира, кроме onChange....эт норма?)
onInput взагалі краще юзати.
источник

𝕬

𝕬𝖗𝖙𝖊𝖒 in React Kyiv
Всем ку. Такой вопрос, столкнулся с тем, что реакт роутер попросту не работает. При переходе на отличную от главной показывает контент всё той же главной страницы(хоть внутри роута и нет тех компонентов). В интернете решений, которые смогли мне помочь, не нашёл.


import { BrowserRouter as Router, Switch, Route } from 'react-router-dom';

...

     <Router>
         <div className="App">
             <Switch>
                 <Route path='/'>
                     {/*some components */}
                 </Route>
                 <Route path='/another_link'>
                     {/*some components */}
                 </Route>
             </Switch>
         </div>
     </Router>
источник

AR

Alexey Raspopov in React Kyiv
𝕬𝖗𝖙𝖊𝖒
Всем ку. Такой вопрос, столкнулся с тем, что реакт роутер попросту не работает. При переходе на отличную от главной показывает контент всё той же главной страницы(хоть внутри роута и нет тех компонентов). В интернете решений, которые смогли мне помочь, не нашёл.


import { BrowserRouter as Router, Switch, Route } from 'react-router-dom';

...

     <Router>
         <div className="App">
             <Switch>
                 <Route path='/'>
                     {/*some components */}
                 </Route>
                 <Route path='/another_link'>
                     {/*some components */}
                 </Route>
             </Switch>
         </div>
     </Router>
поменяй местами роуты или поставь exact первому
источник

𝕬

𝕬𝖗𝖙𝖊𝖒 in React Kyiv
Alexey Raspopov
поменяй местами роуты или поставь exact первому
Спасибо, помогло, но как смена мест роутов влияет на итоговый результат?
источник

AR

Alexey Raspopov in React Kyiv
𝕬𝖗𝖙𝖊𝖒
Спасибо, помогло, но как смена мест роутов влияет на итоговый результат?
Можно почитать вот здесь
https://reactrouter.com/web/api/Switch

TL;DR: path это шаблон, Switch выбирает первый сработавший шаблон. / без exact подойдёт любому роуту, потому его Свитч сразу и выберет. По ссылке есть примеры
источник