我正在构建一个与Pokeapi相结合的基本react应用程序 。每当用户在我的 pokedex 的输入字段中输入一些东西时,我想更新状态然后 (onSubmit) 在 Pokeapi 中找到这个 pokemon。
每当我记录状态(在状态更新函数中)时,它都会记录输入字段中输入的状态 -1 字符。
组件片段:
import React, { Component } from 'react';
export default class Pokedex extends Component {
constructor(props) {
super(props);
this.state = {
pokemon: "",
result: {}
}
}
setPokemon(value) {
this.setState({
...this.state.pokemon,
pokemon: value.toLowerCase()
});
console.log(this.state.pokemon);
}
render() {
return (
<div className="container-fluid">
<div className="pokedex row">
<div className="col-half left-side">
<div className="screen"/>
<div className="blue-button"/>
<div className="green-button"/>
<div className="orange-button"/>
</div>
<div className="col-half right-side">
<input type="text" placeholder="Find a pokemon" onChange={(e) => this.setPokemon(e.target.value)}/>
</div>
</div>
</div>
)
}
}
为什么会发生这种情况?