#reactjs
#reactjs
Вопрос:
Привет, у меня вопрос, как мы можем перехватить id
из url
onProductClick = item => {
this.props.history.push(`/product/${item.id}`);
};
Как мы можем присвоить это поступление переменной id
из url
в react
Это то место, где я планировал перехватить оценщик идентификаторов
class ProductView extends React.Component {
componentDidMount() {
let someVar = this.props.location.pathname.split('/').pop()
console.log('router val ', someVar);}
Комментарии:
1. Пожалуйста, уточните, что это за идентификатор, который вы пытаетесь передать, и откуда он должен исходить?.. Что вы подразумеваете под идентификатором URL?
2. @S.Haviv Это примерно так localhost: 3000 / product / 12 , на странице продукта, как я могу получить идентификатор (12)
3. Похоже, вы используете react-router, я думаю, вам следует упомянуть это в вашем вопросе. Так является ли id запросом или параметром пути? И, в частности, в чем заключается ваш вопрос. Хотели бы вы прочитать item.id опять какое-то другое место в вашем коде?
4. Я не вижу его, это сервер разработки только для вас локально.
5. @the_cheff Это как этот localhost: 3000 / product / 12, на странице продукта, как я могу получить идентификатор (12)
Ответ №1:
Похоже, что вы используете react-router, маршрут, в котором вы хотите получить идентификатор, должен быть добавлен при объявлении маршрутов, подобных этому. > path=»/product/:id» Это должно быть сделано там, где вы указываете свои маршруты и маршрутизируете определенный компонент.
Внутри маршрутизируемого компонента who найдет идентификатор в реквизитах в основном с этим значением. this.props.match.params.id
Это может отличаться в зависимости от метода маршрутизации, но вы можете зарегистрировать свои реквизиты и получить значение с помощью соответствующего ключа.