gpt4 book ai didi

javascript - react 文本字段 onChange 事件

转载 作者:行者123 更新时间:2023-11-29 16:01:49 25 4
gpt4 key购买 nike

让我解释一下我正在尝试做的事情:我有一个页面,显示来自网络服务的信息。我还为我的 TablePagintation 使用了网络服务分页(在 url 参数中发送所需的页面),所以我不会存储不必要的信息。

现在我也不想过滤我的数据。我不能简单地过滤从网络服务返回的结果,因为它只包含 10 条记录(因为分页方法),所以我需要再次调用网络服务,但这次是搜索查询,它将返回过滤后的结果(也应该通过 tablePagintation 分页显示)

问题是,我不知道如何在调用 Web 服务的方法中访问我的当前状态过滤器..

我的文本字段:

  <TextField
id="filter"
helperText={labels.filterHelperText}
value={props.brokersListFilter}
onChange={props.setBrokersListFilter}
className={props.classes.textField}/>

我的 setBrokersListFilter :

export const setBrokersListFilter = (event) => {
return dispatch => {
dispatch({
type: actionNames.SET_BROKERSLIST_FILTER,
brokersListFilter: event.target.value
})
}
}

到目前为止,它正确地更新了状态,但现在我需要调用我的方法 getBrokers,使用状态过滤器来调用 Web 服务。

export const getBrokers = (page) => {
return async dispatch => {
try {
filter = filter ? filter : '' // HERE I WANT THE STATE FILTER AS DEFAULT
dispatch({type: appActionNames.TOGGLE_LOADING})
const res = await fetch(`/...?pageNumber=${page + 1}&pageSize=10&searchQuery=${filter}`, {
method: 'GET',
headers: {
"Accept": "application/json; charset=utf-8"
}
})
.....

那么我怎样才能访问这些方法中的状态,这样我就不会覆盖现有的过滤器(在更改页面或过滤器时)

我能做什么?

最佳答案

我已经设法通过添加一个将调用这两种方法的处理程序来解决问题。

onChange 处理程序:

<TextField
id="filter"
helperText={labels.filterHelperText}
value={props.brokersListFilter}
onChange={props.onFilterChange }
className={props.classes.textField}/>
........
onFilterChange = (event) => {
this.props.setBrokersListFilter(event)
this.props.getBrokers(this.props.brokersListPage, this.props.brokersListFilter)
}

关于javascript - react 文本字段 onChange 事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51966088/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com