Webpack Web包开发服务器设置有问题
我的项目大致有以下结构: Webpack将静态资产放在Webpack Web包开发服务器设置有问题,webpack,webpack-dev-server,Webpack,Webpack Dev Server,我的项目大致有以下结构: Webpack将静态资产放在公共文件夹中 output: { path: resolve('public'), filename: 'bundle.js' }, 我想做的是让Webpack Dev Server从src文件夹中提供index.html,但从public文件夹请求静态资产。这可能吗?文档说,将index.html文件放在build文件夹中,但是如果可以设置dev服务器来服务public文件夹中的静态资产,
公共
文件夹中
output: {
path: resolve('public'),
filename: 'bundle.js'
},
我想做的是让Webpack Dev Server从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'
},
其他信息,如果重要的话:我还在我的路由器中进行代码拆分,这样当应用程序切换到相应的路由时,我会从父包(
bundle.js
,1.bundle.js
)请求一些较小的包(bundle.js
)
我意识到的是,主捆绑包使用Webpack config的
output
参数的publicPath
选项创建到依赖捆绑包的链接。在我上面展示的示例中,publicPath
是/
;因此,如果我从public
文件夹提供index.html
,并且index.html
需要bundle.js
,那么bundle.js
将需要从同一文件夹提供0.bundle.js
。另一方面,如果我将publicPath
设置为/public
,然后放置在public
文件夹中的index.html
将具有bundle.js
,这将需要public/public
文件夹中的0.bundle.js
。只是想说,尽管我还没有找到我最初问题的答案,我意识到更好的设置是使用HTMLWebpackPlugin
,作为模板
选项myindex.html
传递给它。插件将自动引用我的脚本文件,将它们添加到模板中,并将生成的html放入输出路径(public
文件夹)
output: {
path: resolve('public'),
filename: 'bundle.js'
},
真是太高兴了 我只是想说,虽然我还没有找到我原来问题的答案,但我意识到更好的设置是使用
HTMLWebpackPlugin
,将其作为模板选项传递给我的index.html
。插件将自动引用我的脚本文件,将它们添加到模板中,并将生成的html放入输出路径(public
文件夹)
真是太高兴了