如何使用 webpack 加载 Nodejs 核心模块

How to load Nodejs core modules using webpack

我无法将 nodejs 的核心模块加载到浏览器。

我的 xlsx 库依赖于 fs 这是一个核心模块,加载我的应用程序会产生 cannot find module "fs" 错误。

我反复进行了一些谷歌搜索,结果 - 说我应该将 target:node 添加到我的 webpack.config.js 文件但是,按照他的建议完成会产生另一个错误 -> process is not defined

我想知道是否有满足该需求的模块加载器?我找不到。

webpack.config.js:

module.exports = {
  entry: "./app/boot",
  output: {
    path: __dirname,
    filename: "./dist/bundle.js"
  },
  resolve: {
    extensions: ['', '.js', '.ts']
  },
  module: {
    loaders: [
      { test: /\.ts/,   loaders: ["ts-loader"], exclude: /node_modules/ }
    ],
    preLoaders: [
      // All output '.js' files will have any sourcemaps re-processed by 'source-map-loader'.
      { test: /\.js$/, loader: "source-map-loader", exclude: ['node_modules', 'ext-*', 'lib', 'tools'] }
    ]
  },
  debug: true,
  devtool: 'source-map'
};

如有任何见解,我们将不胜感激,在此先感谢,如果有任何其他信息有帮助,请告诉我。

我没有使用 babel 也没有使用 gulp

你不能。

不存在可在浏览器中正常工作的 fs 等效项。出于安全原因,JavaScript 在浏览器中执行的 运行 在沙箱中,您对客户端文件系统的访问权限非常有限,which is what the module fs is used for in NodeJS