"Could not find "store" in either the context or props" 我在尝试简单的 react-redux 代码时遇到这个错误
"Could not find "store" in either the context or props" I'm getting this error while trying simple react-redux code
这是我的书单容器
import React, {Component} from 'react';
import { connect } from 'react-redux';
class BookList extends Component{
renderList(){
return this.props.books.map((book)=>{
return(
<li key={book.title}>{book.title}</li>
);
});
}
render(){
return(
<ul>
{this.renderList()}
</ul>
)
}
}
function mapStateToProps(state){
return{
books : state.books
};
}
export default connect(mapStateToProps)(BookList);
这是我的 app.js 文件
import React from 'react';
import { Component } from 'react';
import BookList from '../containers/book-list';
export default class App extends Component{
render(){
return(
<div>
<div>React simple App</div>
<BookList/>
</div>
);
}
}
这是我在 Reducers 文件夹中的 index.js 文件
import {combineReducers} from 'redux';
import BooksReducer from './reducer_books';
const rootReducer = combineReducers({
books:BooksReducer
});
export default rootReducer;
这是我的主要 index.js 文件,它在
上呈现应用程序组件
import React from 'react';
import ReactDOM from 'react-dom';
import App from './components/app';
import './index.css';
ReactDOM.render(
<App />,
document.getElementById('root')
);
这是我的书籍减速器
export default function () {
return [
{title: 'AAA1'},
{title: 'BBB2'},
{title: 'CCC3'},
{title: 'DDD4'},
]
}
请告诉我哪里错了。
创建一个 store
并将您的组件包含在一个 Provider
中,例如
import {createStore} from 'redux';
import { Provider } from 'react-redux'
import RootReducer form '/path/to/rootreducer';
import React from 'react';
import ReactDOM from 'react-dom';
import App from './components/app';
import './index.css';
const store = createStore(RootReducer);
ReactDOM.render(
<Provider store={store}>
<App />
</Provider>,
document.getElementById('root')
);
这是我的书单容器
import React, {Component} from 'react';
import { connect } from 'react-redux';
class BookList extends Component{
renderList(){
return this.props.books.map((book)=>{
return(
<li key={book.title}>{book.title}</li>
);
});
}
render(){
return(
<ul>
{this.renderList()}
</ul>
)
}
}
function mapStateToProps(state){
return{
books : state.books
};
}
export default connect(mapStateToProps)(BookList);
这是我的 app.js 文件
import React from 'react';
import { Component } from 'react';
import BookList from '../containers/book-list';
export default class App extends Component{
render(){
return(
<div>
<div>React simple App</div>
<BookList/>
</div>
);
}
}
这是我在 Reducers 文件夹中的 index.js 文件
import {combineReducers} from 'redux';
import BooksReducer from './reducer_books';
const rootReducer = combineReducers({
books:BooksReducer
});
export default rootReducer;
这是我的主要 index.js 文件,它在
上呈现应用程序组件import React from 'react';
import ReactDOM from 'react-dom';
import App from './components/app';
import './index.css';
ReactDOM.render(
<App />,
document.getElementById('root')
);
这是我的书籍减速器
export default function () {
return [
{title: 'AAA1'},
{title: 'BBB2'},
{title: 'CCC3'},
{title: 'DDD4'},
]
}
请告诉我哪里错了。
创建一个 store
并将您的组件包含在一个 Provider
中,例如
import {createStore} from 'redux';
import { Provider } from 'react-redux'
import RootReducer form '/path/to/rootreducer';
import React from 'react';
import ReactDOM from 'react-dom';
import App from './components/app';
import './index.css';
const store = createStore(RootReducer);
ReactDOM.render(
<Provider store={store}>
<App />
</Provider>,
document.getElementById('root')
);