如何将Redux-Reducer指针传递到React Context



简而言之,我试图将一个reducer传递到一个上下文文件并拥有它,这样,如果reducer的状态更新了,我就可以在上下文文件中查看新状态。

这是我的减速器:

function StillUploadReducer(state = true, action){
switch (action.type){
case 'stillUpload':
return action.payloadData
default:
return state
}
}

以下是我如何将其传递到firebase上下文文件:

const addData = await firebase.addExercise(
Data,
props.StillUploadReducer
);

在上下文文件中,我做了一个值的console.log,并获得了传入的原始值。这方面的主要问题是,我希望用户能够在等待上传视频时更改reducer的状态,这样,如果状态发生了更改,就会在上下文文件中反映出来。用户使用以下操作更改减速器:

const StillUpload = (dataToPass) => {
return{
type: 'stillUpload',
payloadData: dataToPass,
}
}

我已经在控制台上记录了上下文文件外reducer的值,我可以看到它正在更新,我只是不知道如何看到上下文文件中反映的更改。有人有什么想法吗?Thx提前了。

reducer只是一个纯函数。它没有状态,因此将reducer作为参数传递给另一个函数无法实现您想要的结果。我不知道你说的";上下文文件";或者firebase.addExercise的作用,但您很可能应该使用useSelector挂钩,它正是为组件设计的,以便在状态的相应部分每次更改时重新发送。您也不应该再使用mapStateToProps,它是用于遗留类组件的遗留API。

相关内容

  • 没有找到相关文章

最新更新