Javascript 在页面间传递变量的React链接
我在react的Javascript 在页面间传递变量的React链接,javascript,reactjs,react-router,Javascript,Reactjs,React Router,我在react的/home页面上设置了以下链接。按下链接后,我想将变量stockRow传递到/quotes页面 <Link to = "/quotes" params={{ testvalue: stockRow }} > 通过更多研究更新了答案: 下面是使用Link 第一次进近: 将参数作为查询传递。在这种情况下,它将在查询参数中显示为url 在组件中接收它,如下所示: const search=props.location.search; const params=
/home
页面上设置了以下链接。按下链接后,我想将变量stockRow
传递到/quotes
页面
<Link to = "/quotes" params={{ testvalue: stockRow }} >
通过更多研究更新了答案: 下面是使用
Link
第一次进近:
- 将参数作为查询传递。在这种情况下,它将在查询参数中显示为url
- 在组件中接收它,如下所示:
const search=props.location.search;
const params=新的URLSearchParams(搜索);
const testvalue=params.get('testvalue');
log(testvalue);
- 注意:还用于解析查询
- 第一种方法的优点是您与其他人共享url,并且数据在刷新时保持不变。还可以通过序列化来传递数组/对象
- 使用路由参数
- 像这样配置您的路线
转到报价页
- 在组件中接收它,如下所示:
导出默认函数引号(道具){
让变量=props.match.params.testvalue
返回(
);
}
- 第二种方法的优点是,您与其他人共享url,并且数据在页面刷新时保持不变。但是,您只能使用最小类型的数据结构,如字符串和数字
- 将
链接的
属性中的数据作为
值传递给状态
我的链接
- 在组件中接收它,如下所示:
导出默认函数引号(道具){
让变量=props.location.state&&props.location.state.testvalue
返回(
);
}
- 这样做的好处是,您可以将任何类型的数据传递给state。但是,在页面刷新时,数据不会持久化,您需要在组件中处理这种情况
export default function Quotes({match}) {
const { testvalue } = match.params;
console.log(testvalue);
return (
);
}
'TypeError:undefined'的属性'params'无法读取有什么方法可以解决此问题吗?
export default function Quotes({match}) {
const { testvalue } = match.params;
console.log(testvalue);
return (
);
}