169 похожих чатов

Всем привет! Вопрос по React. Подскажите пожалуйста, что мне нужно

передать по url, чтобы получить в компоненте this.props.location ?
пока вот так открываю страницу (см. скрин). На этой странице планирую показать данные о продукте. Как это лучше сделать?

30 ответов

20 просмотров
Yuliya-Ants Автор вопроса

памагити 😅

Yuliya Ants
памагити 😅

Через консоль лог проверяй что ты получаешь

использовать реакт роутер

Yuliya Ants
памагити 😅

нужно хоть одним глазком заглянуть на официальный сайт Реакта в документацию и посмотреть, что такое вообще этот Реакт

Yuliya-Ants Автор вопроса

когда я открываю страницу Product, то this.props.location пустое (undefined) видимо мне както надо перекинуть пропсы с Card в Product но как это лучше сделать? В рутере у меня есть запись <Route path="product/:product" element={<Product />} />

Yuliya Ants
когда я открываю страницу Product, то this.props.l...

есть в роутере useLocation-хук, есть просто window.location в самом яваскрипте

Yuliya-Ants Автор вопроса
Артур Мудрик 🇮🇱🇷🇺
есть в роутере useLocation-хук, есть просто window...

А если я пробую вот так передать данные, почему они тоже не доступны в компоненте? this.props.location остается пустым (

Yuliya Ants
screenshot А если я пробую вот так передать данные, почему он...

я уже не очень помню классовие компонент, но кажется, чтоби пропси получать нужно нужно конструктор обьявить и super в нем прописать, мб ошибаюсь

Yuliya-Ants Автор вопроса

в карточке все норм доступно и их я правильно вывожу со всеми нужными пропсами но теперь мне нужно както при клике на карточку открывать выбранный продукт как это правильно сделать? через Link я так понимаю параметры без хуков не передать? (у меня классовые компоненты)

Yuliya-Ants Автор вопроса
R ZHUKOV ZHUKOV
передать, просто через : указывай айди

где его правильно указать? я вот так пытаюсь перекинуть, не работает <Link to={{ pathname: /product/${this.props.product.id} }} state={{ from: this.props.product.id }} > Путь формируется правильно, а стейт без хуков не доступен

Yuliya-Ants Автор вопроса
Yuliya Ants
да, правильная

ну теперь показывай как ты в компоненте продукта читаешь id

нет, в компонент дид маунт читай локейшн

ты запрос за данными по айди как будешь делать?

Yuliya Ants
да, планирую так

ну а запрос в каком месте компонента ты будешь делать?)

Yuliya-Ants Автор вопроса
Yuliya-Ants Автор вопроса
Yuliya-Ants Автор вопроса
R ZHUKOV ZHUKOV
покажи как ты читаешь

много способов уже пробовала, пока ни один не сработал withRouter - не находит, видимо в 6 роутере убрали уже его хук useLocation() не могу использовать, так как у меня классовые компоненты сижу туплю

R ZHUKOV ZHUKOV
ты можешь код показать?

как ты в компонент дидмаунт читаешь

Yuliya-Ants Автор вопроса
R ZHUKOV ZHUKOV
ты можешь код показать?

я бы показала, если бы там чтото толковое было, выше скрины кидала, но потом поняла, что так не работает console.log('check: ', this.props.state);

Yuliya Ants
screenshot А если я пробую вот так передать данные, почему он...

А зачем ты вообще локацию через пропсы передаешь, просто используй хук useLocation

Yuliya-Ants Автор вопроса
Dmitry Staver
А зачем ты вообще локацию через пропсы передаешь, ...

У меня классовые компоненты, хуки нельзя использовать

Yuliya Ants
У меня классовые компоненты, хуки нельзя использов...

ну да, не заметил, а разве в реакт роутере нет решения для классов? Да и зачем вообще классы в 2022 использовать

Yuliya-Ants Автор вопроса
Dmitry Staver
ну да, не заметил, а разве в реакт роутере нет реш...

Ну вот эти решения и использую. У меня вопрос как переменную внедрить. Я бы вычисляла ее выше, дотретюрна, но у меня два вложенных мапа…

Похожие вопросы

Обсуждают сегодня

а через ESC-код ?
Alexey Kulakov
29
30500 за редактор? )
Владимир
47
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
в JclConsole объявлено так: function CtrlHandler(CtrlType: DWORD): BOOL; stdcall; - где ваше объявление с stdcall? у вас на картинке нет stdcall
Karagy
8
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
Ребят в СИ можно реализовать ООП?
Николай
33
program test; {$mode delphi} procedure proc(v: int32); overload; begin end; procedure proc(v: int64); overload; begin end; var x: uint64; begin proc(x); end. Уж не знаю...
notme
6
у вас два процесса. один посылает другому сигнал. у вас есть код обоих процессов? если всё не так - расскажите как оно на самом деле. а именно кто кому чего, есть-ли консоли,...
Karagy
6
Карта сайта