首页 > 解决方案 > Javascript 模块,如何在开发构建中添加额外的内容?

问题描述

我希望我的开发版本包含一些额外的内容。如何在条目中使用 if 语句?

示例(不工作)

module.exports = {
  entry: {
    'index.html': path.resolve(__dirname, 'src/index.pug'),
    'search.html': path.resolve(__dirname, 'src/search.pug'),
    !production && {'secret.html': path.resolve(__dirname, 'src/secret.pug')}
  }
}

标签: javascriptecmascript-6module

解决方案


我会拉出您的entry对象并根据您的需要构建它。

var entryPoints = {
    'index.html': path.resolve(__dirname, 'src/index.pug'),
    'search.html': path.resolve(__dirname, 'src/search.pug')
  }

if(!production) {
    Object.assign(entryPoints, {'secret.html': path.resolve(__dirname, 'src/secret.pug')})
}

你的 Webpack 配置现在看起来像:

module.exports = {
  entry: entryPoints,
  //...
}

推荐阅读