gpt4 book ai didi

javascript - fs.readFile() 或 fs.readFileSync() 不是函数异常,但为什么呢?

转载 作者:太空宇宙 更新时间:2023-11-04 03:16:58 32 4
gpt4 key购买 nike

我正在使用带有以下导入代码的 fs 模块

导入 fs = require('fs')

代码一直运行,直到在下面的 TypeScript 代码的第二行遇到此异常

const filePath = 'data/soylent-uist2010/userSegments.json'
const seg = fs.readFileSync(filePath, {
encoding: 'utf8',
})

但是,如果我将 readFileSyncpath 参数作为原始字符串提供(如下所示),它会正常工作(已分配值)。

const seg = fs.readFileSync('data/soylent-uist2010/userSegments.json', {
encoding: 'utf8',
})

错误堆栈跟踪如下,

Viewer.tsx:155 Uncaught (in promise) TypeError: fs.readFileSync is not a function
at Viewer.<anonymous> (Viewer.tsx:155)
at step (io.ts:106)
at Object.next (io.ts:106)
at io.ts:106
at new Promise (<anonymous>)
at __awaiter (io.ts:106)
at Viewer._this.loadFiles (Viewer.tsx:135)
at Viewer.<anonymous> (Viewer.tsx:98)
at step (io.ts:106)
at Object.next (io.ts:106)

更长的代码片段如下。我怀疑 async 关键字(在类方法中)是否需要在 fs.readFile()

之前使用 await 关键字
  loadFiles = async () => {
this.setState({ pages: [] });
const {
pageNumbersToLoad,
pathInfo: { pdfDir, pdfRootDir }
} = this.props;
const fullDirPath = path.join(pdfRootDir, pdfDir);
const pdfPath = path.join(fullDirPath, pdfDir + ".pdf");
**const seg = fs.readFile(...);**

最佳答案

因为 fs 没有默认导出,您需要像这样导入:

从 'fs' 导入 * 作为 fs

关于javascript - fs.readFile() 或 fs.readFileSync() 不是函数异常,但为什么呢?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55128930/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com