【发布时间】:2018-07-14 10:34:18
【问题描述】:
我正在尝试更改<Input type='select'> 上的state 和URL onChange。
(我正在使用 reactstrap)
import React, {Component} from 'react'
import {
Input,
} from 'reactstrap'
export default class NewPostComponent extends Component {
constructor(props) {
super(props)
this.state = {
selected: '',
}
}
handleChange(event) {
this.setState({
selected: event.target.value,
})
}
render() {
return (
<Input type='select' onChange={(e) => handleChange(e)}>
<option>option 1</option>
<option>option 2</option>
<option>option 3</option>
<option>option 4</option>
</Input>
)
}
}
我正在更改state,但问题在于更改URL。我试过props.history.push 但在handleChange 中如下:
handleChange(event) {
this.setState({
selected: event.target.value,
})
this.props.history.push(`/${this.state.selected}/new/`)
}
这是我得到的错误
未捕获的类型错误:无法读取未定义的属性“推送”
console.log(this.props.history) 是undefined。
我只需要在setState 发生后更改URL。
【问题讨论】:
标签: javascript reactjs url