【发布时间】:2017-09-27 14:09:32
【问题描述】:
我对反应和遵循教程还很陌生。讲师正在使用 axios 从 github api 中提取一些数据。以下是他建议的 onSubmit 事件处理程序:
handleSubmit = (event) => {
event.preventDefault();
console.log('event: form submit ' + this.state.userName )
axios.get('https://api.github.com/users/${this.state.userName}')
.then(resp => {
console.log(resp)
});
}
但是,当我运行它时,this.state.userName 没有得到解决,我收到 404。代码有问题还是 axios 更新了?我正在使用 jscomplete/repl 游乐场来使用它。
帮助表示赞赏!
以下是组件代码:
class Form extends React.Component {
state = {
userName: ' ',
event: ' '
}
handleSubmit = (event) => {
event.preventDefault();
console.log('event: form submit ' + this.state.userName )
axios.get('https://api.github.com/users/${this.state.userName}')
.then(resp => {
this.setState({event: resp})
});
console.log(event)
}
render() {
return (
<form onSubmit={this.handleSubmit}>
<input type="text"
value={this.state.userName}
onChange={(event) => this.setState({userName: event.target.value})}
placeholder={ this.state.username } required
/>
<button>Add Card</button>
</form>
)
}
}
【问题讨论】:
-
仅供参考,我得到了这个:GET api.github.com/users/$%7Bthis.state.userName%7D 404(未找到)
-
你能说明你是怎么称呼它的吗?可能是完整的组件代码
-
好的,我会编辑问题
-
那么 this.state.userName 肯定是未定义的!在你旁边缺少 `(反引号)
标签: javascript reactjs ecmascript-6 axios