调试webpack问题--config找不到

时间:2019-05-15 12:58:27

标签: node.js webpack

所以我的webpack运行正常。我需要的结构与默认结构不同,因此将webpack文件放置在build文件夹中。根据文档,我在包json中放置了--config选项,但仍然无法访问调试器中的文件。 下面是我的设置:

"scripts": {
    "dev": "webpack-dev-server --inline --progress --config build/webpack.dev.conf.js",
    "local": "webpack-dev-server --inline --progress --config build/webpack.local.conf.js",
    "start": "npm run dev",
    "build": "node build/build.js",
    "build_dev": "node build/build.dev.js",
    "build_stg": "node build/build.stg.js",
    "build_prod": "node build/build.prod.js",
  },

当我运行命令node-nightly --inspect ./node_modules/webpack/bin/webpack.js时 我收到错误消息:

No configuration file found and no output filename configured via CLI option.
A configuration file could be named 'webpack.config.js' in the current directory.

就我在根目录下的文件结构而言,名为build的文件夹包含Webpack配置文件(我不确定该结构是如何在SO上编写的) 版本用法: "webpack": "^3.12.0" node 9.3

1 个答案:

答案 0 :(得分:0)

-config 是webpack的属性。您正在尝试在webpack-dev-server webpack-dev-server

上设置--config属性

您可以将devserver移至webpack.config.js文件

devServer: {
        inline: true,
        progress: true
}

,然后像这样直接在npm中引用您的webpack.config.js文件:

webpack --config ./build/yourfile.config.js

如果使用-config 属性,则可以给配置文件指定任何名称,否则webpack将始终尝试在您的文件中找到 webpack.config.js 项目根目录。

ELSE

您可以在根目录中创建 webpack.config.js ,并在运行时在配置版本之间进行切换,如下所示:

//webpack.config.js
const TARGET = process.env.npm_lifecycle_event;

if (TARGET === 'build') {
    module.exports = require('./buildScripts/webpack.config.dev');
}
else if (TARGET === 'build:prod') {
    module.exports = require('./buildScripts/webpack.config.prod');
}

,在 package.json 中,您需要适当的目标来匹配 npm_lifecycle_event

//package.json
"scripts": {
    "build": "webpack --watch",
    "build:prod": "webpack",
  }