不写入 JSON 文件。 fs.writeFile 不工作

Posted

技术标签:

【中文标题】不写入 JSON 文件。 fs.writeFile 不工作【英文标题】:Not Writing To JSON file. fs.writeFile not working 【发布时间】:2019-01-26 21:39:58 【问题描述】:

我有这个 fs.writeFile 代码,假设在将 newWorkout POST 到数据库时更新 localdata.json 文件,这将获取本地状态数据以尝试写入文件。..

虽然它不起作用并抛出一个,TypeError: fs.writeFile is not a function error.. 现在正在修复,但如果有人看到任何帮助,我们将不胜感激。

 fs.writeFile(
        "./localdata.json",
        JSON.stringify(newWorkout.eventDateTime),
        "utf-8",
        function(err) 
          if (err) throw err
          console.log("Done!")
        
      )

【问题讨论】:

那么fs到底是什么? @robertklep FS 是节点文件系统 - nodejs.org/api/fs.html 嗯,不完全是,因为如果是,fs.writeFile 是一个函数。 请提供minimal reproducible example - 就目前而言,这里没有足够的信息来提供合理的答案。 【参考方案1】:

鉴于您在 Node.js 环境中工作,fs 似乎不是正确的 Node.js 文件系统对象。复制自Node.js 10.x documentation:

要使用这个模块:

const fs = require('fs');

【讨论】:

如果fs 没有加载,使用fs.writeFile 会引发另一个错误(fs is not defined)。在这种情况下,fs 似乎被定义了,只是fs.writeFile 不是一个函数(因为它被覆盖了,或者fs 在声明后被覆盖了)。 @robertklep 谢谢,我明白你的意思了。我已经相应地更新了我的答案。【参考方案2】:

节点文件系统不能在“浏览器端”使用,这些调用是为了在服务器端发生。

【讨论】:

【参考方案3】:

您是否包括:

var fs = require("fs");
...the rest of your code...

【讨论】:

const fs = require("fs") 被包含在@11AND2

以上是关于不写入 JSON 文件。 fs.writeFile 不工作的主要内容,如果未能解决你的问题,请参考以下文章

fs.writeFile 没有错误,但是写入文件失败

nodejs模块——fs模块 WriteFile写入文件

node文件写入的三种操作

在 Node 中使用“fs”写入文件时出错

nodejs 写入文件

Node.js - 文件系统 - 在 fs.writeFile() 中使用变量