为了账号安全,请及时绑定邮箱和手机立即绑定

Webpack 将目录中同名的所有文件输出到不同的文件夹中

Webpack 将目录中同名的所有文件输出到不同的文件夹中

慕斯王 2023-10-14 16:00:02
我有以下目录:  - src/    - js/      - profile1/        - script1.js        - script2.js      - profile2/        - script3.js        - script4.js      - script5.js  - dist/    - js/  package.js  webpack.config.js我正在尝试将所有 JS 文件打包到保留相同命名和文件夹结构的文件夹/src/js中。dist/js我可以为每个文件编写不同的配置,并对每个 JS 文件进行 webpack,但我想知道是否有一组配置可以一次性完成所有操作。我努力了:const path = require('path');module.exports = {  entry: './src/js/*.js',  output: {    filename: '*.js',    path: path.resolve(__dirname, 'dist'),  }}惨败。
查看完整描述

1 回答

?
MMMHUHU

TA贡献1834条经验 获得超8个赞

您可以像使用glob一样先匹配入口文件(使用 来安装它npm i glob)。[name]然后您可以通过附加到 来动态更改输出output.filename。这是完整的代码:


const path = require('path');

const glob = require('glob');


module.exports = {

  entry: Object.fromEntries(glob.sync(path.resolve(__dirname, 'src/js/**/*.js')).map((v) => [

    v.split('src/js/')[1], v,

  ])),

  output: {

    filename: '[name]',

    path: path.resolve(__dirname, 'dist/js'),

  },

};


查看完整回答
反对 回复 2023-10-14
  • 1 回答
  • 0 关注
  • 71 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信