我正在使用 https://github.com/stylesuxx/generator-react-webpack-redux 中的生成器。开发进展顺利,只是浏览器控制台出现错误
warning.js:10 Store 没有有效的 reducer 。确保传递给combineReducers的参数是一个值为reducers的对象。
在reduce文件的index.js
中,代码如下:
import { combineReducers } from 'redux';
const reducers = {};
const combined = combineReducers(reducers);
module.exports = combined;
stores文件中的index.js
中,代码如下:
import { createStore } from 'redux';
import reducers from '../reducers';
function reduxStore(initialState) {
const store = createStore(reducers, initialState,
window.devToolsExtension && window.devToolsExtension());
if (module.hot) {
// Enable Webpack hot module replacement for reducers
module.hot.accept('../reducers', () => {
// We need to require for hot reloading to work properly.
const nextReducer = require('../reducers'); // eslint-disable-line global-require
store.replaceReducer(nextReducer);
});
}
return store;
}
export default reduxStore;
我在当前的开发中没有使用 redux,但我使用生成器进行配置以供将来规划。知道如何像上面的代码一样使 reducer 为空const reducers = {};
而不触发任何警告吗?
最佳答案
您需要的是一个有效的 reducer ,如错误所示。 如果您想保留样板,您可以尝试以下操作,或者
const reducers = { somename: () => {} };
const combined = combineReducers(reducers);
module.exports = combined;
或者尝试
module.exports = () => {};
这将确保返回有效的 reducer 函数。因为你没有使用 redux 这不会是一个问题。
关于javascript - 当 reducer 为空时,Store 没有有效的 reducer ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46860998/