React,onchange方法不更新方法参数

问题描述 投票:-1回答:2

实时搜索输入。 onChange方法不更新getMovie方法中的参数

constructor() {

this.getMovies('a');
}

getMovies(searchItem) {
    $.ajax({
        url: 'https://api.themoviedb.org/3/search/movie?api_key=...&query=' + searchItem
    })
}

onChange(e) {
    const searchItem = e.target.value
    this.getMovies(searchItem)
}


render(
    <input onChange={this.onChange.bind(this)}></input> 
)
reactjs api methods onchange
2个回答
0
投票

这不是处理这种情况的好方法,无论它是如何传递正确的参数。你绝对应该以一些有意义的方式限制你的ajax调用,否则它会在你不关心的请求中淹没API。关于手头的问题,很难帮助提供给定的细节,介意添加一些额外的代码来说明你是如何意识到它没有改变的?你在控制台看到任何错误吗?


0
投票

使用输入字段上的每次更改请求来轰炸API是非常糟糕的做法。我认为你想要实现的是某种自动完成样式的输入字段。也许尝试研究'react-autosuggest'。它需要初始提取来检索所有名称条目以填充数组/地图等,然后您的输入字段可以遍历每次更改。

© www.soinside.com 2019 - 2024. All rights reserved.