假设我有一个项目,结构是这样的
projectFolder
--index.html
--img
--js
--childMod
--modA
--index.html
--img
--js
在webpack的正常配置中,多个pages.all图像包含子模块中的图像将被放入同一个文件夹,就像这样
buildFolder
--index.html
--modA.html
--allImgs
--bundle.js
--modA.bundle.js
我希望webpack保留项目结构,就像这样
buildFolder
--index.html
--imgs
--bundle.js
--childMod
--childModImgs
--modA.html
--modA.bundle.js
我的目标是,webpack可以识别资源的路径,如果它在childMod中,那么它们将被输出并放在childMod的文件夹中,而不是一起放在一个文件夹中。 如何制作?
答案 0 :(得分:0)
从this Github comment开始,是的,您可以为文件加载器执行此操作:
file?name=[path][name].[ext]&context=/the/root/path
这会将文件/the/root/path/dir/file.png
复制到/output-directory/dir/file.png.
在Webpack配置中,它可能如下所示:
{ test: \.png$/, loader: "file?name=[path][name].[ext]&context=/the/root/path" },
对于像CSS和Javascript这样的资源,它们通过捆绑和缩小数据的其他加载器传递,不,没有办法做到这一点。这没有意义,因为Javascript文件可以来自整个项目的各种文件夹。