javascript - react路由中如何向组件传参数呢
阿神
阿神 2017-04-11 10:59:18
[JavaScript讨论组]

加入代码中有这样一个路由需要渲染;

render(
    
    
        
        
        
        
        
        
    
, ele)

但是App组件是这样的;

import React ,{ Component }from 'react';
import Nav from './nav';
import Foot from './foot';

class App extends Component{
    constructor(props){
        super(props);
    }
    render(){
        return (
            

{this.props.name}

App组件中这个 {this.props.name}是通过外面参数传递进来的,但是上面的代码中怎么向App传递参数呢;

如果是单纯的渲染App可以这样写:

render(
    , ele)

希望有知道的朋友帮忙解答一下啊

阿神
阿神

闭关修行中......

全部回复(3)
PHPz

讲道理。react-router 封装的这些组件,是不允许你自定义传props的。只支持那几个固定的,比如history,
params,location,route等等,都是跟路径参数有关的。
如果想传一些自定义的数据,可以结合redux,直接connect往组件里传store。。
因为你直接给Router或者Route穿props 其实是给了Router组件,它不会帮你做注入props。
可以自己尝试封装一层。- -
还是用react-redux吧...

ringa_lee

是路由向组件传参吗?
<Route path="/job/:id" component={jobDetail} />
jobDetail组件就能渠道路由中的ID了,通过this.props.params.id
可以参考下阮一峰的React Router,http://www.ruanyifeng.com/blo...

怪我咯

如果你用了react-router的话
在配置路由路径的时候可以这样写path=yourroutername/:id

在你的组件里就可以这样调用

const { location,params } = this.props;
console.log(params)  //这个就是你需要的参数  `typeof params` =`object`

我上面写的我需要的id就可以这样获得let myId=this.props.params.id 这个id的名字和上面path是对应的

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号