我的項目大致有以下結構:用的WebPack開發服務器在遇到問題時設置
的WebPack把靜態資產在public
文件夾中。
output: {
path: resolve('public'),
filename: 'bundle.js'
},
我想要做的就是讓開發的WebPack從服務器src文件夾服務index.html
,而是從public
文件夾請求靜態資產。這可能嗎?文檔中說,將index.html
文件放在build文件夾中,但是如果可以將dev服務器設置爲從public
文件夾中提供靜態資源,那麼就沒有理由在其中複製index.html
。
我嘗試了以下配置,但它沒有工作:
中的package.json:
webpack-dev-server --inline --history-api-fallback --content-base src
在webpack.config.js:
output: {
path: resolve('public'),
publicPath: '../public',
filename: 'bundle.js'
},
附加信息,如果它很重要:我也在我的路由器中進行代碼分割,以便我得到一些較小的(0.bundle.js
,1.bundle.js
等),當應用程序切換到相應的路由時,它們是從父包(bundle.js
)請求的。
我意識到那是什麼主束創建鏈接使用的WebPack配置的的output
參數的publicPath
選項依賴包。在我上面展示的例子中,publicPath
是/
;所以如果我服務於public
文件夾中的index.html
和index.html
需要bundle.js
,則bundle.js
將需要來自同一文件夾的0.bundle.js
。另一方面,如果我將publicPath
設置爲/public
,則放置在public
文件夾中的index.html
將具有bundle.js
,這將需要0.bundle.js
從public/public
文件夾。