2016-09-30 88 views
-1

有關如何將我自己的基於服務器的代碼添加到webpack-dev-server,或者用express替換webpack-dev-server的基本問題熱模塊重新加載)。我期望找到一個名爲server.js的文件,我可以添加自己的代碼。這是一個基本的問題,因爲每個非靜態應用程序都需要自己的服務器代碼,但我還沒有找到一個簡單的方法來實現它。我正在使用Angular 2 Webpack Starter。我希望在進行生產時可以很容易地直接刪除webpack-dev-server。如何將我自己的服務器代碼添加到webpack-dev-server執行

+0

開發服務器僅適用於前端開發。生產版本由您自己的服務器實現服務,例如我使用HapiJS + Inert服務我的Webpack生產包,但是使用webpack-dev-server進行開發。您絕不應該將Webpack服務器用於生產環境。 – gelliott181

+0

瞭解webpack服務器不應該用於生產(因此最後一句)。問題是,當從前端開始進行開發時,但隨後添加後端開發時,後端開發代碼的位置並不清楚。希望這是有道理的。 – Blue

回答

1

您仍然可以使用Express 進行熱重裝,使用webpack-dev-middlewarewebpack-hot-middleware

兩個中間件不應在生產中加載,以便您可以使用這樣的事情:

// Webpack (when not running in production mode) 
if (process.env.NODE_ENV !== 'production') { 
    const webpackDevMiddleware = require('webpack-dev-middleware'); 
    const webpackHotMiddleware = require('webpack-hot-middleware'); 
    const webpackConfig  = require('./webpack.config'); 
    const compiler    = require('webpack')(webpackConfig); 

    app.use(webpackDevMiddleware(compiler, { 
    noInfo  : true, 
    publicPath : webpackConfig.output.publicPath 
    })); 
    app.use(webpackHotMiddleware(compiler)); 
} 

app是一個Express實例)

相關問題