Javascript React Hooks:在“中获取数据”;地点“;但不在带“的参数中”;链接“;
您好,我正在尝试通过url将参数/数据从一个页面传递到另一个页面,下面的链接是传递数据的代码Javascript React Hooks:在“中获取数据”;地点“;但不在带“的参数中”;链接“;,javascript,reactjs,react-hooks,Javascript,Reactjs,React Hooks,您好,我正在尝试通过url将参数/数据从一个页面传递到另一个页面,下面的链接是传递数据的代码 {Array.isArray(products) ? products.map((product, i) => <tbody> <tr> <td>{i + 1}</td> <Link to={`/campaing/${product._id}`}&
{Array.isArray(products) ?
products.map((product, i) =>
<tbody>
<tr>
<td>{i + 1}</td>
<Link to={`/campaing/${product._id}`}>
<td>{product.name}</td>
</Link>
<td>Rs: {product.price}</td>
<td>{product.rating}</td>
</tr>
</tbody>
) : <h3>No Product Present Add One</h3>
}
提前谢谢。如果您需要更多详细信息,请与我联系。请访问此链接:
希望这个链接能解决您的问题。修复了这个问题,只需要获得computedMatch,因为它只是通过道具从身体传递位置和数据
const PrivateRoute = ({ component: Component, computedMatch: match }) => {
const isLoggedIn = JWTDATA();
console.log(match);
return (
<Route {...match}
render={props =>
isLoggedIn ? (
<Component {...props} />
) : (
<Redirect to={{ pathname: '/login', state: { from: props.location } }} />
)
}
/>
)
const PrivateRoute=({component:computedMatch:match})=>{
const isLoggedIn=JWTDATA();
控制台日志(匹配);
返回(
伊斯洛格丁(
) : (
)
}
/>
)
}请分享完整代码,以便更好地理解,特别是
App.js
您放置路线的文件。这对我不起作用,因为请不要传递数据来粘贴完整代码。以下是代码:
const {id} = useParams();
console.log(id + ' -------------------'); //undefined
console.log(props.location.pathname) //campaing/21ye7wqdg3276e
const PrivateRoute = ({ component: Component, computedMatch: match }) => {
const isLoggedIn = JWTDATA();
console.log(match);
return (
<Route {...match}
render={props =>
isLoggedIn ? (
<Component {...props} />
) : (
<Redirect to={{ pathname: '/login', state: { from: props.location } }} />
)
}
/>
)