首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >反应,Redux。为什么我的调度调度功能体?

反应,Redux。为什么我的调度调度功能体?
EN

Stack Overflow用户
提问于 2017-08-18 14:38:06
回答 1查看 171关注 0票数 0

这是我的商店创建,我在applyMiddleware函数中应用了applyMiddleware

代码语言:javascript
复制
import { createStore, combineReducers, applyMiddleware } from 'redux'
// import { composeWithDevTools } from 'remote-redux-devtools'
import logger from 'redux-logger'
import thunk from 'redux-thunk'
import promise from 'redux-promise-middleware'
import tokenReducer from './reducers/tokenReducer'

const rootReducer = combineReducers({
  tokenReducer
})

const middleware = applyMiddleware(logger, promise, thunk)

let store = createStore(rootReducer, middleware)

export default store

然后我将我的组件连接到存储和mapDispatchToProps

代码语言:javascript
复制
function mapDispatchToProps (dispatch) {
  return {
    getToken: () => dispatch(fetchTokenFromStorage())
  }
}

export default connect(mapStateToProps, mapDispatchToProps)(SplashScreen)

这是我的函数fetchTokenFromStorage代码

代码语言:javascript
复制
export function fetchTokenFromStorage () {
  return (dispatch) => {
    dispatch(getToken())
    AsyncStorage.getItem('AuthToken')
      .then(function (token) {
        dispatch(getTokenSuccess(token))
      })
      .catch(function () {
        dispatch(getTokenFailure())
      })
  }
}

在我的控制台操作中执行this.props.getToken()之后,如下所示:

动作ƒ(调度){ 调度(getToken()); _reactNative.AsyncStorage.getItem('AuthToken').then(function (令牌){ 调度(getTokenSuccess(令牌)); ).catch(函数() { 调度(获取…)

这是我的函数fetchTokenFromStorage代码。React将我的函数转换为动作类型名称。为什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-08-18 15:24:31

thunk必须是applyMiddleware中的第一位

const middleware = applyMiddleware(thunk, logger, promise)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45759280

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档