gpt4 book ai didi

javascript - 在 React 中,什么会调用高阶组件和 redux-thunk 之类的返回函数?

转载 作者:行者123 更新时间:2023-12-02 22:21:17 26 4
gpt4 key购买 nike

我的问题是关于 React 中什么调用返回函数?例如,使用 redux-thunk,假设我从任意组件的 componentDidMount() 调用以下函数,

getCurrentPoll() 

我的 redux-thunk 操作定义如下:

export const getCurrentPoll = pollId => async dispatch => {
try {
const currentPoll = await api.call('get', `polls/${pollId}`)
dispatch(actionGetCurrentPoll(currentPoll))
dispatch(removeError())
} catch (err) {
const { message } = err.response.data
dispatch(addError(message))
}
}

我的理解是调用getCurrentPoll()将返回异步调度函数。但是什么调用返回的异步调度函数呢?

同样对于高阶组件..比如说下面的函数,它将上下文 api 值注入(inject)到组件 props 中。

const withRoomConsumer = Component => props =>
<RoomContext.Consumer>
{value => <Component {...props} context={value} />}
</RoomContext.Consumer>

当您运行export default withRoomConsumer(RoomsContainer)时,什么会调用返回的函数props =>...

提前谢谢

最佳答案

redux-thunk 创建一个 redux 中间件并检查该操作是否是一个函数,然后调用该函数。你可以查看他们的implementation here ,很简单只有14行

React HOC 返回一个功能性 React 组件,React 将照常渲染该组件。 (它也可以是一个类组件)

关于javascript - 在 React 中,什么会调用高阶组件和 redux-thunk 之类的返回函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59222995/

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