Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reactjs 在将数据从父组件传递到子组件时如何处理redux状态_Reactjs_Redux_Redux Saga - Fatal编程技术网

Reactjs 在将数据从父组件传递到子组件时如何处理redux状态

Reactjs 在将数据从父组件传递到子组件时如何处理redux状态,reactjs,redux,redux-saga,Reactjs,Redux,Redux Saga,我的应用程序包含两个组件 包含用户列表的ListComponent(父级) 显示用户信息的UserComponent(子级) 用户列表页: <ListComponent data={this.props.users} renderItem={(item) => <UserComponent user={item} />} /> 减速器: mapStatetoProps = (state) => ({ followers: state.us

我的应用程序包含两个组件

  • 包含用户列表的ListComponent(父级)
  • 显示用户信息的UserComponent(子级)
  • 用户列表页:

    <ListComponent 
       data={this.props.users} 
       renderItem={(item) => <UserComponent user={item} />}
    />
    
    减速器:

    mapStatetoProps = (state) => ({
      followers: state.user.followers 
    })
    
    initial_state = {
    followers: {}
    }
    
    成功后:

    followers: {
       totalFollowers: action.totalFollowers
    }
    
    当用户(设备用户)单击将用户道具发送到UserComponent的用户图标时,我使用redux状态保存用户列表,在那里我显示用户信息。如果用户(设备用户)单击follow按钮,则使用redux&redux saga更新后端和用户配置文件信息

  • 根据以上代码,无法全局更新用户数据(Redux状态)
  • 或者我可以更新整个列表吗
  • 我是否遵循了正确的方法

  • 处理此类一般性问题的两种方法

  • 从父组件将方法作为道具发送给子组件。在此方法中,分派操作以更新存储。。等内部子组件,用于ex

    this.props.methodFromParent(如果需要,发送一些数据)}

    在父级内部捕获该方法并更新存储。。前

    this.methodFromParent(someData)}
    .. 现在在methodFromParent中更新存储

    methodFromParent=()=>{this.props.dispatch(无论您使用什么工作流)}

  • 窗体子组件本身。。使用
    store.dispatch()
    因此,首先在子组件内部导入存储,然后可以使用
    sotre.dispatch(someaction)
    。但这种方法并不好。。您应该按照上述方法设置项目。并使用这些
    store.dispatch()、store.getState()
    。在紧急情况下,您无法访问mapStateToProps等


  • 处理此类一般性问题的两种方法

  • 从父组件将方法作为道具发送给子组件。在此方法中,分派操作以更新存储。。等内部子组件,用于ex

    this.props.methodFromParent(如果需要,发送一些数据)}

    在父级内部捕获该方法并更新存储。。前

    this.methodFromParent(someData)}
    .. 现在在methodFromParent中更新存储

    methodFromParent=()=>{this.props.dispatch(无论您使用什么工作流)}

  • 窗体子组件本身。。使用
    store.dispatch()
    因此,首先在子组件内部导入存储,然后可以使用
    sotre.dispatch(someaction)
    。但这种方法并不好。。您应该按照上述方法设置项目。并使用这些
    store.dispatch()、store.getState()
    。在紧急情况下,您无法访问mapStateToProps等

  • followers: {
       totalFollowers: action.totalFollowers
    }