在创建可重用的React-Redux包时,如果遇到找不到"store"的问题,通常是因为Redux的store没有正确地集成到React组件树中。以下是一些基础概念和相关解决方案:
createStore
函数创建的。Provider
组件和connect
函数。以下是一个简单的示例,展示如何在React应用中正确设置和使用Redux store:
// store.js
import { createStore } from 'redux';
import rootReducer from './reducers';
const store = createStore(rootReducer);
export default store;
// index.js
import React from 'react';
import ReactDOM from 'react-dom';
import { Provider } from 'react-redux';
import store from './store';
import App from './App';
ReactDOM.render(
<Provider store={store}>
<App />
</Provider>,
document.getElementById('root')
);
// MyComponent.js
import React from 'react';
import { connect } from 'react-redux';
import { someAction } from './actions';
const MyComponent = ({ someState, someAction }) => {
return (
<div>
<p>{someState}</p>
<button onClick={someAction}>Click me</button>
</div>
);
};
const mapStateToProps = (state) => ({
someState: state.someReducer,
});
const mapDispatchToProps = {
someAction,
};
export default connect(mapStateToProps, mapDispatchToProps)(MyComponent);
Provider
组件包裹了整个应用,并且传递了正确的store。store.js
文件是否正确导出了store。useSelector
钩子时,确保使用了正确的选择器函数。通过以上步骤,你应该能够解决在创建可重用的React-Redux包时找不到"store"的问题。如果问题仍然存在,请检查具体的错误信息,并根据错误信息进行进一步的调试。
没有搜到相关的沙龙
领取专属 10元无门槛券
手把手带您无忧上云