【发布时间】:2019-07-22 03:47:41
【问题描述】:
我是使用 redux 做出原生反应的新手。我试图弄清楚 react-native redux 集成中的所有部分。给我带来麻烦的一件事是了解差异类型,而选择器为我提供了更多详细信息。
【问题讨论】:
-
你好像没看过docs。
标签: redux types react-redux selector store
我是使用 redux 做出原生反应的新手。我试图弄清楚 react-native redux 集成中的所有部分。给我带来麻烦的一件事是了解差异类型,而选择器为我提供了更多详细信息。
【问题讨论】:
标签: redux types react-redux selector store
MapStateToProps -> 有他的名字,你可以将状态对象映射到道具。示例:
你有一个这样的商店:
{
name:'paul',
surname:'watson'
}
然后你需要在你的组件中显示名称,这样你就可以在你的容器中使用 mapstatetoprops 访问存储在 store 中的这些数据,如下所示:
const mapStateToProps = (state, ownProps) => ({
myname: state.name,
})
MapDispatchToProps -> 当你需要调度一个动作时,你可以将一个动作映射到一个可以在你的组件中使用的道具
你有这样的动作:
const setMyName = payload => ({
type: SET_MY_NAME,
payload,
})
然后你需要在用户点击某物时更新你在商店中的名字抛出这个动作,所以你可以将此动作映射到一个道具中,以便使用 mapDispatchToProps 调用 updateName('pepito'),如下所示:
const mapDispatchToProps = {
updateName: setMyName,
}
选择器 -> 只是一个抽象代码,选择器让你的生活更轻松。
选择器是将 Redux 状态作为参数并返回一些数据以传递给组件的函数,如下所示:
const getDataType = state => state.editor.dataType;
这是一个基本概念,你应该阅读官方文档并搜索,互联网上有很多关于此的文章。
【讨论】: