我正在开发一个 nodejs 项目并遇到了这个问题。 我在一个文件中有一个空对象,并将在第二个文件中更新此对象值。
json文件.js
var jsonObj = {
first: []
,
second: []
,
third: [],
};
exports.jsonObj=jsonObj;
推送数据.js
var obj= require('./jsonFile.js');
// i'll retrieve data from file and push into the obj...
// for the sake of simplicity im not writing data fetching code..
ojb.jsonObj.first.push("user1");
我如何更新 pushdata.js 文件中的这个对象,以便它也更新/更改 jsonFile.js
中的对象最佳答案
处理此问题的最佳方法是执行以下操作:
- 将 jsonFile.js 更改为 .json 文件(您仍然可以按原样要求它)
- 更新它,例如ojb.jsonObj.first.push("user1");
- 将更改写入文件系统。
这是一个代码示例:
jsonFile.json
{
"first": [],
"second": [],
"third": []
}
pushdata.js
var fs = require('fs');
var obj = require('./jsonFile.json');
ojb.first.push("user1");
fs.writeFileSync(__dirname + '/jsonFile.json', JSON.stringify(obj, null, 4), 'utf8');
为简单起见,使用 writeFileSync,但最好使用异步功能进行文件系统写入,以避免阻塞代码。
关于javascript - 修改两个文件之间的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44478239/