react里面 react-router4 跳转

react

在react里面跳转的时候,一般可以用

<Link to='/tradeList' />

但是我们在运用组件组合的时候经常会通过传参去判断,如果props传过来是参数,如果有link进行跳转,没有link,不跳转或者其他操作

我是这样尝试的

<Link to={this.props.link ? this.props.link : '/'} />

有link的时候确实会跳转,没有link的时候,卧槽,报错了

那就换种方式,通过js里面去控制

第一种方式

linkTo(){

Modal.info({

title:'正在开发,敬请期待 ...',

onOk() {}

});

}

colDom(data){

if(!data.link){

return(

<Col span={4} align='middle' onClick={this.linkTo.bind(this, data.link)}>

<Icon type={data.iconText} className={data.color} />

<div className='mt5'>{data.txt}</div>

</Col>

)

}

return(

<Col span={4} align='middle'>

<Link to={data.link}>

<Icon type={data.iconText} className={data.color} />

<div className='mt5'>{data.txt}</div>

</Link>

</Col>

)

}

{this.colDom(dataArr)}

第二种方式

import { withRouter } from 'react-router-dom';

class BothSides extends React.Component{

constructor(props){

super(props);

}

linkTo(link){

if(link){

this.props.history.push(link);

}

}

render(){

let data = this.props.data;

return(

<div onClick={this.linkTo.bind(this,data.link)}>hello</div>

)

}

}

export default withRouter(BothSides);

以上是 react里面 react-router4 跳转 的全部内容, 来源链接: utcz.com/z/381469.html

回到顶部