Javascript 如何使用webpack输出多个文件夹?

Javascript 如何使用webpack输出多个文件夹?,javascript,gruntjs,webpack,Javascript,Gruntjs,Webpack,我的JS模块有一个文件夹结构。我希望每页一个模块。这不是一个单页应用程序 如何在文件夹结构中输出文件 据我所见,唯一的可能是输出[name].js。如果我使名称非常独特,或者我可以使名称有一个文件夹分隔符-,这可能会起作用。这意味着a/b/c.js将被翻译成名称a-b-c。我真的不喜欢这个。我希望能够要求(“a/b/c”) 据我所知,我也不能使用单个捆绑文件,因为require在模块外不可用。如果是的话,我可以只构建一个包,并在每个页面上require(“a/b/c”) 如果有一个很好的方法来做

我的JS模块有一个文件夹结构。我希望每页一个模块。这不是一个单页应用程序

如何在文件夹结构中输出文件

据我所见,唯一的可能是输出
[name].js
。如果我使名称非常独特,或者我可以使名称有一个文件夹分隔符
-
,这可能会起作用。这意味着
a/b/c.js
将被翻译成名称
a-b-c
。我真的不喜欢这个。我希望能够
要求(“a/b/c”)

据我所知,我也不能使用单个捆绑文件,因为
require
在模块外不可用。如果是的话,我可以只构建一个包,并在每个页面上
require(“a/b/c”)

如果有一个很好的方法来做到这一点,我在互联网上找不到,请让我知道


看起来我可以使用r.js轻松地使用require.js实现这一点,但我不想使用require.js,而是希望使用CommonJS模块。

您也可以使用[name]创建新文件夹。像这样:

output: {
    path: __dirname,
    filename: '[name]/[name].js',
    chunkFilename: '[name].js',
    publicPath: '/assets/'
},

可以使用斜杠定义入口点,如下所示:

entry: {
    "main-plugin/js/background":"./src/main-plugin/background"
}
output: {
    path: path.join(__dirname, 'public'),
    filename: '[name].js'
},
输出
如下:

entry: {
    "main-plugin/js/background":"./src/main-plugin/background"
}
output: {
    path: path.join(__dirname, 'public'),
    filename: '[name].js'
},

此安装程序将创建一个
public/main plugin/js
文件夹,并将
background.js
放入其中。它至少在
Win7x64

上工作,我正在做类似的事情,但不完全相同。在我的
webpack.config.js
中,我创建了几个不同的配置,根据运行不同的
npm
脚本时设置的NODE_ENV环境变量,我可以在这些配置之间切换。例如,在我的
package.json
中,我有一个名为
builddev
的脚本,它运行
“set NODE\u ENV=development&&webpack”
。希望这能给你一些想法!