我有这个对象正在被其他文件导出和导入。最初,对象为空,但在事件更改期间(单击一个按钮),对象将填充键和值,但在导入它的文件中仍保持为空。如何动态更新对象,然后使用它的新值导出它。
代码看起来像这样:
firstFile.js
const anObject = {};
function clicked() {
anObject.firstName = "John";
anObject.lastName = "Doe" ;
}
module.exports = anObject;
secondFile.js
const importedObject = require("./firstFile");
console.log(importedObject) // always returns an empty object
答案 0 :(得分:1)
您必须导出并调用clicked
功能。否则你永远不会真正更新该对象。
例如。
firstFile.js
const anObject = {};
function clicked() {
anObject.firstName = "John";
anObject.lastName = "Doe" ;
}
module.exports = anObject;
module.exports.clicked = clicked;
secondFile.js
const importedObject = require("./firstFile");
console.log(importedObject.firstName) //undefined
importedObject.clicked()
console.log(importedObject.firstName) //John
修改强>
在与OP进一步讨论后,这是一个电子应用程序。上面的代码适用于Node.js.电子可能有不同的设置,需要额外的步骤来完成这项工作。