javascript - JS/Electron 将 json 读取到 textarea 并用文本更改覆盖
问题描述
我已经成功读取了json并读取了textarea中的变量,方式如下:
function additem() {
fs.readFile(path.join(__dirname, 'weekplan.json'), 'utf8', (err, data) => {
if (err) {
alert('Could not read file.\n\nDetails:\n' + err.message)
return
}
let json = JSON.parse(data)
loop(json);
})
}
async function loop(json) {
mainWindow.webContents.executeJavaScript(`document.getElementById("mon1").innerHTML = '${json.mon1}'`)
}
在 html 中:
<textarea type="text" id="mon1" readonly="true" onblur="this.readOnly='true';" ondblclick="this.readOnly='';"></textarea>
当它在 textarea 中更改时,如何覆盖 json 中的变量 mon1?
提前致谢。
解决方案
我通过重新创建 json 并在任何文本更改时更新它来管理它
const fs = require('fs');
var textareamon1 = document.getElementById('mon1');
function updateResult() {
m1 = textareamon1.value;
var obj = '{'
+'"mon1" : '+'"'+m1+'"'+','
+'}';
fs.writeFileSync('weekplan.json', obj);
}
textareamon1.onkeyup = updateResult;