对象(...)对于applyMiddleware(thunk.withExtraArgument({ getFirebase,getFirestore }))不是函数错误是由于在使用Redux中间件时出现的常见错误之一。该错误通常发生在使用thunk中间件时,thunk允许我们在Redux中进行异步操作。
在这个错误中,问题出现在applyMiddleware函数的参数中。applyMiddleware函数用于将中间件应用于Redux store。在这种情况下,我们使用了thunk中间件,并传递了一个包含getFirebase和getFirestore的对象作为额外的参数。
然而,这个错误的原因是我们传递的参数不是一个函数。applyMiddleware函数期望中间件是一个函数,而不是一个对象。因此,我们需要将getFirebase和getFirestore封装在一个函数中,以便正确传递给applyMiddleware函数。
修复这个错误的方法是将getFirebase和getFirestore封装在一个函数中,并将其作为参数传递给thunk中间件。例如:
import { createStore, applyMiddleware } from 'redux';
import thunk from 'redux-thunk';
import { getFirebase, getFirestore } from 'redux-firestore';
const store = createStore(
rootReducer,
applyMiddleware(thunk.withExtraArgument({ getFirebase, getFirestore }))
);
在这个修复后的代码中,我们将getFirebase和getFirestore封装在一个函数中,并将其作为参数传递给thunk.withExtraArgument函数。然后,我们将thunk中间件与applyMiddleware一起应用于Redux store。
这样修复后,我们就可以正确地使用thunk中间件,并且不会再出现"对象(...)对于applyMiddleware(thunk.withExtraArgument({ getFirebase,getFirestore }))不是函数"的错误。
推荐的腾讯云相关产品和产品介绍链接地址:
领取专属 10元无门槛券
手把手带您无忧上云