在我的main.js app.on("ready")
中,我调用了一个名为的函数runTimer()
,其中包含以下内容:
const runTimer = function(){
const { net } = require('electron')
setInterval(async function () {
if (seconds == 0) {
const request = await net.request("https://localhost:6001/api/traintimes");
request.on("response", (response) => {
if (response.statusCode === 200) {
response.on("data", (data) => {
mainWindow.webContents.send("render-update", data);
console.log(`Body: ${data}`);
});
response.on("end", () => {
console.log("No more data in response.");
});
}
});
request.end()
seconds = 5;
}
seconds--
mainWindow.webContents.send("counting", seconds);
},1000)
}
当我在以下行中进行控制台登录时,我能够在控制台中看到我希望发送到 UI 的数据:
console.log(`Body: data`);
所以我希望以下行将相同的 JSON 数据发送到 UI。
mainWindow.webContents.send("render-update", data);
但是,我在 UI 中得到了一个 unit8Array 结果,我不确定为什么它不显示在控制台后面的一行中记录的 JSON 结果。
IPC 渲染器
ipcRenderer.on("fetched-train-update", (evt, data) => {
console.log(data);
})
基本上,我没有在 UI 控制台中记录 JSON 数据,而是得到 unit8Array,如下所示: