【发布时间】:2022-01-30 05:15:06
【问题描述】:
我需要动态读取 JSON 文件。这就是为什么require() 不会削减它的原因。在 NodeJS 服务器重新启动之前,它不会简单地更新文件。这就是为什么我必须使用fs.readFile 或fs.readFileSync。
当我使用时,const data = require("../data.json"); 它只是正确读取它。完全没有问题,但就像我说的,它不会动态更新。
当我使用const data = () => fs.readFileSync("../data.json", { encoding: "utf8" }); 时,它只会返回Error: ENOENT: no such file or directory, open '../data.json'
我也试过fs.readFile。没用。
最奇怪的是,当我尝试使用 fs.readFileSync 读取另一个 json 文件时,我看到了我几天前更改的值。它读取旧版本。我不明白。那个旧版本已经不存在了。我手动检查了。
我试过npm install、npm cache clean --force。我想不出别的了。
【问题讨论】:
-
使用绝对路径,以确保 CWD 没有问题。
标签: javascript node.js json