如何解决 fs.existsSync 不是函数

Gam*_*007 17 node.js webpack

在 NodeJS 中,我有:

const fs = require('fs');
if (!fs.existsSync("some_path")) {
...
}
Run Code Online (Sandbox Code Playgroud)

但我收到错误:

类型错误:fs.existsSync 不是函数

做一些搜索后,我读Webpack给自己带来require哪些则会覆盖node.jsrequire,所以当你需要一个node.js核心模块是webpack无法解析为您的文件或依赖项之一,它抛出。

(我的堆栈跟踪包括__webpack_require__

但是我该如何解决呢?

Kru*_*iya 18

我面临着与TypeError相同的错误:fs.existsSync is not a function

在此处输入图片说明

所以,我发现自动添加了一个额外的行,这在导入时会产生这个问题。

在此处输入图片说明

从导入中删除此行后

import { TRUE } from "node-sass";
Run Code Online (Sandbox Code Playgroud)

问题已解决。

  • 这对我有帮助,谢谢!我的编辑器(Visual Studio Code)以某种方式神奇地在我的文件顶部插入了“import { render } from 'node-sass';”。-.- (3认同)

KDS*_*DSG 6

我和你有同样的错误。你的 vscode 可能在你的 js 文件中添加了一个新模块。删除该模块,您的应用程序应该可以正常工作。


Mar*_*yer 5

您可以通过在配置中定位节点来允许 webpack 使用节点require和包含fs等:

module.exports = {
  entry: './src/main.js',
  target: 'node',
  output: {
    path: path.join(__dirname, 'build'),
    filename: 'backend.js'
  }
}
Run Code Online (Sandbox Code Playgroud)

如此处所述:https : //webpack.js.org/concepts/targets/https://webpack.js.org/configuration/target/