Webpack:丢失成员导入时抛出错误

时间:2016-11-11 01:21:03

标签: webpack

我有一个像这样的导入:

import { foo } from 'bar';

如果未定义foo,是否有办法让Webpack抛出错误?

请注意,如果有所不同,我会使用Babel。

2 个答案:

答案 0 :(得分:5)

Tobias K pointed out in the comments,其他答案不正确。如果您尝试导入不存在的模块,则配置strictModuleExceptionHandling: true将不会产生编译时错误。

正确的配置是strictExportPresence: true,仅在webpack v2.3.0及更高版本中可用。 (早期版本只能显示警告,而不是错误。)

答案 1 :(得分:2)

可以使用{{&var}}将webpack 2配置为在导入失败时抛出错误。该拉取请求https://github.com/webpack/webpack/pull/3302添加了该功能,但尚未记录。以下是如何使用它:

{{var}}}

现在,如果我尝试从存在dosn的文件中导入,或者我将导入解析为output.strictModuleExceptionHandling,我会在webpack控制台中收到错误和警告消息:

module.exports = {
    entry: {
        main: "./main.js",
    },
    output: {
        filename: "[name].bundle.js",
        strictModuleExceptionHandling: true
    }
}

在Chrome控制台中,您会收到如下警告:

warning message in chrome