我正在研究一些代码以了解webpack
及其作用,并遇到了这段代码;
const path = require('path');
const docsBuild = {
entry: {
'app/docs/lib/dice-roller': './app/src/main.js'
},
output: {
path: path.join(_dirname,''),
filename: '[name].js'
}
};
module.exports = [docsBuild];
我不明白为什么为什么要代替条目main的属性,而是要有一个文件路径,以及为什么path.join
的第二个参数为空。我是webpack
的新手,似乎无法在其文档中找到答案,也许我没有很好地搜索过,但可以帮助您。
答案 0 :(得分:0)
根据webpack文档:
要输入应用程序的点。此时, 应用程序开始执行。如果传递数组,则所有项目将 被执行。
那段代码:
entry: {
'app/docs/lib/dice-roller': './app/src/main.js'
}
正在将'app/docs/lib/dice-roller'
的入口点设置为'./app/src/main.js'
输出目录为绝对路径。
path.join
的第二个参数是输出目录名称本身。在您的示例中为空,但正如您在example provided here中看到的那样,该项目为以下项目结构:
webpack-demo
|- package.json
|- webpack.config.js
|- /dist
|- /src
您可以设置以下输出配置,其中__dirname返回当前模块的目录名称:
output: {
filename: '[name].js',
path: path.resolve(__dirname, 'dist')
}
this 'options' documentation的一段内容也可能对此有所说明:
请注意,在整个配置过程中,我们使用Node内置的path module并将其前缀为全局__dirname。这样可以防止文件 操作系统之间的路径问题,并允许相对路径 按预期工作。有关POSIX与Windows的更多信息,请参见this section。 路径。
希望这对您有所帮助。