请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

关于mapStatetoProps和mapDispatchtoProps的2个问题

import * as actionCreators from './actionCreators'import { bindActionCreators } from 'redux'

function mapStateToProps(state) {  return { todos: state.todos }}

function mapDispatchToProps(dispatch) {  return { actions: bindActionCreators(actionCreators, dispatch) }}

export default connect(mapStateToProps, mapDispatchToProps)(TodoApp)

  1.  mapStateToProps(state)这个函数的state是指的什么?它是存放在哪里的,以及如何能知道这个state发生了改变?

  2.  actions: bindActionCreators(actionCreators, dispatch)这一行代码中,下划线部分不用使用相同的名字么?


正在回答

2回答

  1.  state 就是 redux 中当前存储的数据,存放在 JS 的内容中。你在对 redux 和 React 连接起来之后,redux中数据的变化,会自动同步到 React 中。

  2. 可以使用相同的名字,因为一个是变量,一个是对象属性,不冲突。不过为了代码可读性,建议不要用一个名字。

0 回复 有任何疑惑可以回复我~
  • 提问者 jiliangmason #1
    非常感谢!
    回复 有任何疑惑可以回复我~ 2017-05-16 23:33:38
  • 提问者 jiliangmason #2
    再补充一问:在redux-with-react这个例子当中,Hello.jsx文件中的:
    function mapStateToProps(state) {
       return {
           userinfo: state.userinfo
       }
    }
    这里的state是不是reducers下面index.jsx中:
    // 登录
    case actionTypes.USERINFO_LOGIN:
       return action.data
    返回的这个action.data?
    回复 有任何疑惑可以回复我~ 2017-05-17 00:34:47
提问者 jiliangmason 2017-05-17 00:34:16

再补充一问:在redux-with-react这个例子当中,Hello.jsx文件中的:

function mapStateToProps(state) {
   return {
       userinfo: state.userinfo
   }
}

这里的state是不是reducers下面index.jsx中:

// 登录
case actionTypes.USERINFO_LOGIN:
   return action.data

返回的这个action.data?

0 回复 有任何疑惑可以回复我~
  • 双越 #1
    不是的,action.data 是当前数据修改时传递的数据,state 整个 Redux 存储数据的变量
    回复 有任何疑惑可以回复我~ 2017-05-17 10:34:42
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信