这可能是一个有点幼稚的问题,但我是react-redux的新手,我正在边学边学。上下文:假设我有一个react-redux应用程序。在我的顶级组件中,我在底部有这个:functionmapStateToProps({auth}){return{auth};}exportdefaultconnect(mapStateToProps)(newComponent);“auth”部分来self的reducerindex.js文件:import{combineReducers}from"redux";importauthReducerfrom"./authReducer";exportdefau
我有一个简单的路由器(从redux-router开始,切换到react-router以消除变量)。Admin组件基本上只是带有一些导航的{this.props.children};它不是connected组件。Pages组件是一个使用mapStateToProps()进行连接的组件,如下所示:functionmapStateToProps(state){return{pages:state.entities.pages};}帖子更有趣:functionmapStateToProps(state){letposts=map(state.entities.posts,post=>{retu
我想制作可以插入到任何react-redux应用程序中的可重用模块。理想情况下,我的模块在顶层有一个容器组件、Action和缩减器(然后是容器下面的任何展示组件)。我希望该模块只处理它自己的应用程序状态片段,理想情况下不必了解应用程序状态的其余部分(因此它是真正的模块化)。Reducers仅在部分状态下工作(使用combineReducers),所以我对此很满意。然而,对于容器组件,mapStateToProps似乎总是接受应用程序的完整状态。如果mapStateToProps只接受我在我的模块中处理的相同“状态切片”(就像reducer所做的那样),我会喜欢它。这样我的模块就真正是模
一个反应零件OilBarrel连接了我redux存储以创建一个容器OilBarrelContainer://----componentclassOilBarrelextendsComponent{render(){letdata=this.props.data;...}}//----containerfunctionmapStateToProps(state){letdata=state.oilbarrel.data;...}constOilBarrelContainer=connect(mapStateToProps)(OilBarrel)//----reducerconstoilbarre
我想将导航参数放在MapstateToprops方法上我尝试避免使用Redux进行导航,以使其简单,但是如果唯一的方法是使用Redux,那么我将使用它。这是我的代码classGameScreenextendsReact.Component{staticnavigationOptions=({navigation})=>({title:navigation.state.params.id,});render(){return(ID{this.props.game.id}TITLE{this.props.game.title});}}functionmapStateToProps(state,pr
我是ReactNative的新手。我正在为我的reactnative应用程序使用redux架构,但是由于redux的全局存储状态,我遇到了问题。假设,例如,在应用程序中前进时,我正在如下导航。返回导航时,根据redux架构,它正在将导航堆栈中存在的每个页面实例的状态更改为商店中的最新状态。这里是上面例子的代码,Page.js[组件]classPageextendsComponent{componentWillMount(){}render(){var{image,apiCall}=this.props;return()}componentDidMount(){this.props.ap
我正在分解Redux的todo示例以尝试理解它。我读到mapDispatchToProps允许您将调度操作映射为Prop,所以我想到重写addTodo.js以使用mapDispatchToProps而不是调用dispatch(addTodo())。我将其命名为addingTodo()。像这样:importReactfrom'react';import{connect}from'react-redux';importaddTodofrom'../actions';letAddTodo=({addingTodo})=>{letinput;return({e.preventDefault()
我正在分解Redux的todo示例以尝试理解它。我读到mapDispatchToProps允许您将调度操作映射为Prop,所以我想到重写addTodo.js以使用mapDispatchToProps而不是调用dispatch(addTodo())。我将其命名为addingTodo()。像这样:importReactfrom'react';import{connect}from'react-redux';importaddTodofrom'../actions';letAddTodo=({addingTodo})=>{letinput;return({e.preventDefault()
我读过这篇文章。WhatisthedifferencebetweenstateandpropsinReact?它说props不同于状态,理想情况下props不应在其组件中更改,而应仅由其父组件更改。然而,react-redux中的mapStateToProps函数将Redux中的状态映射到React组件的props,这基本上是在Redux状态被Redux操作更改时更改React组件的props。这对我来说没有意义。似乎它应该是mapStateToStates而不是并将Redux状态映射到React组件的状态。我错过了什么吗? 最佳答案
我想在登录后在我的容器“LoginPage”(智能组件)中使用重定向。像这样:handleSubmit(username,pass,nextPath){functionredirect(){this.props.pushState(null,nextPath);}this.props.login(username,pass,redirect);//actionfromLoginAcitons}用户名和密码来自dumb-component。智能组件连接functionmapStateToProps(state){return{user:state.app.user};}functionm