Size: a a a

2020 December 08

MM

Mixa Myronenko in React Kyiv
источник

ОМ

Ольга Мазуренко... in React Kyiv
describe('Dialog', () => {
 test('main ', () => {
   const { getByTestId } = renderWithRedux<ResetPasswordByIdDialog />);
   expect(getByTestId('confirm')).toBeInTheDocument();
 });
}); точнее вот сейчас все в компоненте ResetPasswordByIdDialog
источник

B

Bogdan in React Kyiv
Ольга Мазуренко
describe('Dialog', () => {
 test('main ', () => {
   const { getByTestId } = renderWithRedux(<Modal><ResetPasswordByIdDialog /></Modal>);
   expect(getByTestId('confirm')).toBeInTheDocument();
 });
});
Может там редьюсер какой-то не тот
источник

ОМ

Ольга Мазуренко... in React Kyiv
Bogdan
Может там редьюсер какой-то не тот
нет все то, если убрать компонент-обвертку, то все будет работать как и ожидалось. Данные передаются, хуки отрабатывают корректно, очередь вызовов сохраняется
источник

OT

Olga Tsyb in React Kyiv
Olga Tsyb
Привет. У меня вопрос по jest тестам

мне нужно в тесте рендерить компонент
пробрасывать в него хистори с рутом /
потом кликать на карточку fireEvemt click
и проверять чтоб данный рут был равен show/details/id
помогите и мне
источник

B

Bogdan in React Kyiv
Ольга Мазуренко
нет все то, если убрать компонент-обвертку, то все будет работать как и ожидалось. Данные передаются, хуки отрабатывают корректно, очередь вызовов сохраняется
так а что та обертка меняет?
источник

ОМ

Ольга Мазуренко... in React Kyiv
Bogdan
так а что та обертка меняет?
она передает состояние === состоянию при открытии модального окна
источник

B

Bogdan in React Kyiv
Ольга Мазуренко
она передает состояние === состоянию при открытии модального окна
а компонент обертка это что в коде?
источник

ОМ

Ольга Мазуренко... in React Kyiv
Bogdan
а компонент обертка это что в коде?
просто компонент, который отвечает за внешний вид окна и принимает чилдрены
источник

B

Bogdan in React Kyiv
Ольга Мазуренко
просто компонент, который отвечает за внешний вид окна и принимает чилдрены
То есть Modal?
источник

ОМ

Ольга Мазуренко... in React Kyiv
Bogdan
То есть Modal?
да
источник

ОМ

Ольга Мазуренко... in React Kyiv
Bogdan
То есть Modal?
Я нашла ошибку и таки реакт тестинг лайбрери это делает. Ошибка была в структуре данных. Нужно передавать не данные конкретного редюсера, а и
источник

ОМ

Ольга Мазуренко... in React Kyiv
...имитровать глобальный
источник

B

Bogdan in React Kyiv
Ольга Мазуренко
...имитровать глобальный
ну то есть редьюсер не тот
источник

ОМ

Ольга Мазуренко... in React Kyiv
Bogdan
ну то есть редьюсер не тот
да, я делала упор на то, что он получает данные  для конкретного комонента, а в реальности структура должна полностью повторять структуру глобального . В противном случае дочерний получает информацию, а родительский undefined . Почему именно так  не понмаю (почему тогда дочерний получал все данные )
источник

ОМ

Ольга Мазуренко... in React Kyiv
const initialState = { ui: {dialog: true}} - как-то так
источник

B

Bogdan in React Kyiv
Ольга Мазуренко
да, я делала упор на то, что он получает данные  для конкретного комонента, а в реальности структура должна полностью повторять структуру глобального . В противном случае дочерний получает информацию, а родительский undefined . Почему именно так  не понмаю (почему тогда дочерний получал все данные )
Потому что селекторы достают данные из глобального стора. Он должен иметь одинаковую структуру независимо от того, какая ветка тестируется
источник

ОМ

Ольга Мазуренко... in React Kyiv
Bogdan
Потому что селекторы достают данные из глобального стора. Он должен иметь одинаковую структуру независимо от того, какая ветка тестируется
это да но такие же селекторы есть в дочернем компоненте и ему все норм было , все он видел
источник

С

Сергей in React Kyiv
Ребят, всем привет.
Подскажите, пожалуйста, можно ли используя NavLink из react-router-dom сохранить активный класс для вложенных путей в которых содержится часть базового url?

Пример:
const NavBar = (props) => {
   return (
       <div className="navBar-wrap">
           <NavLink exact to="/news">News</NavLink>
       </div>
   );
};
export default NavBar

const Content = (props) => {
   return (
       <Switch>
           <Route exact path="/news" render={() => <News />} />
           <Route exact path="/news/:catId" render={() => <NewsCats />}/>
     <Route exact path="/news/:catId/:id" render={() => <NewsItem />}/>
       </Switch>
   )
};
export default Content

Другими словами, чтобы при нахождении по любому из урлов, в котором после домена есть /news, был присвоен активный класс главному роуту <NavLink exact to="/news">News</NavLink>
/news
/news/cat
/news/cat/item и т.д.

В документации нашёл withRouter, вроде это оно, но не знаю как его правильно применить, то ли им надо оборачивать компонент с навигацией, то ли с контентом, пробовал и так и сяк, не получается добиться нужного эффекта
источник

MK

Maksim Kleba in React Kyiv
источник