Javascript VS代码扩展代码找不到JSON路径

Javascript VS代码扩展代码找不到JSON路径,javascript,visual-studio-code,vscode-extensions,Javascript,Visual Studio Code,Vscode Extensions,我试图创建一个vs代码扩展,它需要(或导入;)从本地JSON文件读取数据。我将JSON保存在根文件夹中(与我的扩展名.js、包.JSON、.gitignore等所在的文件夹相同)。我的代码使用fspackage读取JSON文件,但是当我在构造函数中运行命令时,我得到以下错误: Error: ENOENT: no such file or directory, open 'fieldIds.json' 我在某处读到文件路径相对于节点开始的文件夹。我不确定运行VS代码时从哪个文件夹节点启动。但是如

我试图创建一个vs代码扩展,它需要(或导入;)从本地JSON文件读取数据。我将JSON保存在根文件夹中(与我的
扩展名.js
包.JSON
.gitignore
等所在的文件夹相同)。我的代码使用
fs
package读取JSON文件,但是当我在构造函数中运行命令时,我得到以下错误:

Error: ENOENT: no such file or directory, open 'fieldIds.json'
我在某处读到文件路径相对于节点开始的文件夹。我不确定运行VS代码时从哪个文件夹节点启动。但是如果我把我的JSON放在那个文件夹中,那么这应该可以工作吗?如何指定只从特定路径(例如,桌面?)运行JSON

我试图将我的JSON文件移动到与VS Code Editorsettings.JSON相同的文件夹中,但也没有成功

/Users/<user>/Library/Application Support/Code/User

帮助。

您应该确保当前工作目录与放置
fieldIds.json
的位置相同。因为
fs
模块最终会从当前工作目录中读取文件

如果您真的想读取同一目录下的文件,请考虑使用以下代码:

const path = require('path')

...

fs.readFileSync(path.resolve(__dirname, "fieldIds.json"), "utf8")

上面的代码片段将找到
fieldIds.json
,它与
extension.js
放在同一目录中,因为
\uu dirname
是当前执行脚本的路径。

当前目录不是您想象的目录。考虑使用<代码>要求。
const path = require('path')

...

fs.readFileSync(path.resolve(__dirname, "fieldIds.json"), "utf8")