首页 > 解决方案 > Webpack - 找不到模块 raw-loader

问题描述

我需要将 JS 文件作为字符串加载,以便对其进行一些分析。我正在尝试将 raw-loader 与 Webpack (2.2.0) 一起使用。

我得到: Cannot find module 'raw-loader!../

我试过(是的,路径是正确的):

let app = require('raw-loader!../../app.js').default;

let app = require('!!raw-loader!../../app.js').default;

我什至尝试过没有内联。raw-loader 没有参与,它只是尝试正常加载 JS 文件:

module.exports = {
  module: {
    rules: [
      {
        test: /\app.js$/i,
        use: 'raw-loader',
        loader: 'raw-loader',
      }
    ]
  }
}

raw-loader 在我的 package.json 中用于项目。它存在于我的节点模块中。我已经炸毁了我的 node_modules 并重新安装了。我查看了许多解决方案,但似乎没有任何问题可以解决。

标签: javascriptwebpack

解决方案


您的正则表达式模式有错误。

您正在使用\a与响铃字符匹配的字符(ASCII 7)

.匹配任何字符,您需要对其进行转义。

此外,同时使用useandloader具有误导性。你应该只使用一个 - 看到这个答案: When do I use 'use' and 'loader' in Webpack 2 module.rules?

尝试使用:

module.exports = {
  module: {
    rules: [
      {
        test: /app\.js$/i,
        loader: 'raw-loader'
      }
    ]
  }
}

推荐阅读