请求如下所示
url: ${ROOT_URL}/profile/unamecheck/?un=${username}
body: username
response: {valid: true}
Here is my React Code
_handleChange = async (username) => {
this.setState({username})
let response = await axios.get(`${ROOT_URL}/profile/unamecheck/?un=${username}`)
if (response.status === 200) {
if(response.data.obtained) {
this.setState({isValidUsername: false})
} else {
this.setState({isValidUsername: true})
}
} else {
}
console.log('isValidUsername');
console.log(this.state.isValidUsername);
}
答案 0 :(得分:2)
向用户发出的每次击键发送请求都没有用。存在用于限制这些请求的库 - 仅在用户停止键入时才触发请求。
debounce plugin页面有一个关于其实施的演示 - 您可以在浏览器中查看它。
对于本地反应,可以实现此answer的逻辑(它使用lodash's debounce):
push('/')