【问题标题】:why webpack is looking for .json module when it is actually a ES6 JSON file read为什么 webpack 正在寻找 .json 模块,而它实际上是一个读取的 ES6 JSON 文件
【发布时间】:2016-08-24 14:12:58
【问题描述】:

ES6 中的 Node app.js 每个请求都会从文件中读取一个 JSON(不理想,但有一种情况)

JSON.parse(fs.readFileSync(`../../src/components/${componentName}/mock.props.json`).toString());

试过了

new webpack.IgnorePlugin(new RegExp("\.json"))

它忽略了请求或 webpack 的 fileDependencies 中的所有 .json:

但仍然在客户端 bundle.js 的 webpack-entry.js 中出现错误

bootstrap df7a535…:39Uncaught Error: Cannot find module "../../src/components/xxx.json"webpackMissingModule @ bootstrap df7a535…:39(anonymous function) @ bootstrap 

当文件名从 mock.props.json 更改为 mock.content.json 时,此错误消失。 webpack 开始将其视为内容而不是模块?不希望将其作为模块查找,它只是一个文件读取。

节点版本 4.3.2

webpack 1.13

【问题讨论】:

    标签: json ecmascript-6 webpack


    【解决方案1】:

    通过使用fs.readFile,webpack 不会将此视为依赖项(因为它不是)。

    改为需要它:

    require(`../../src/components/${componentName}/mock.props.json`);
    

    【讨论】:

    • webpack 认为这是一个依赖,这就是问题所在。
    猜你喜欢
    • 2022-11-16
    • 2022-11-27
    • 2017-05-20
    • 2018-01-06
    • 2022-01-05
    • 2016-02-12
    • 1970-01-01
    • 2021-10-22
    • 2015-09-29
    相关资源
    最近更新 更多