我正在尝试使用Moltin JS在React中构建一个电子商务商店应用程序。每次尝试将其上传到Heroku时,都会出现空白页或错误。该错误表明它无法解决“ redux-logger”。我尝试过重新下载redux logger以及npm install。我仍然收到相同的错误消息。我也尝试过NPM更新。当我从VS Code启动它时,它工作正常。
github docs
Heroku Page
// import the ability to modify browser history within our router
import createHistory from 'history/createBrowserHistory';
// import our logger for redux
import { createLogger } from 'redux-logger';
// import a library to handle async with redux
import thunk from 'redux-thunk';
// import the redux parts needed to start our store
import { createStore, applyMiddleware, compose } from 'redux';
// import the middleware for using react router with redux
import { routerMiddleware } from 'react-router-redux';
// import the already combined reducers for redux to use
import rootReducer from './ducks';
// import moltin API wrapper for use with Redux
import * as api from './moltin';
// create and export history for router
export const history = createHistory();
// combine the middlewares we're using into a constant so that it can be used by our store
const middleware = [thunk.withExtraArgument(api), routerMiddleware(history)];
// declare any enhancers here
const enhancers = [];
// use Redux devtools if available in development
if (process.env.NODE_ENV === 'development') {
const devToolsExtension = window.devToolsExtension;
if (typeof devToolsExtension === 'function') {
enhancers.push(devToolsExtension());
}
middleware.push(createLogger());
}
// compose our middleware
const composedEnhancers = compose(applyMiddleware(...middleware), ...enhancers);
// create our redux store using our reducers and our middleware, and export it for use in index.js
const store = createStore(rootReducer, composedEnhancers);
export default store;
答案 0 :(得分:3)
诀窍在于,Heroku默认仅在部署时安装生产依赖项,因此通过运行dependencies
在您package.json
的{{1}}键下列出的依赖项。
将对应用程序运行至关重要的依赖项(例如redux-logger)从npm install --production
移至devDependencies
,这应该可以解决您的问题。
dependencies
用于支持开发的事物,但对于运行应用的生产副本不是必需的,例如测试模块。