所以我有两个不同的窗口,分别由index1.js和index2.js控制。我在index1.js中创建了一个自定义的javascript类,我试图将同一个类对象解析为index2.js。我能够解析它但是console.log函数将其返回为类型' object '在index2.js中调用并输入' 颜色 '在index1.js中调用时。我如何在index2.js中引用 Color 对象。有关实施的任何建议。
index1.js
class Color extends EventEmitter {
constructor(hex){
this.hex = hex;
}
getRGB(r, g, b) {
return r+g+b;
}
getHSV(h, s, v){
return h+s+v;
}
}
function _init(){
let electron = reqire('electron');
electron.ipcRenderer.send('color', new Color("#FFFFF"));
}
index2.js
window.onload = function() {
const electron = require('electron');
electron.ipcMain.on('color', function (myColor) {
event.preventDefault();
console.log(myColor);
}
}
答案 0 :(得分:0)
简而言之,你应该从接收方那里重建对象。
Electron的IPC仅发送可序列化的POJO,而Color
继承EventEmitter
,其中包含不可序列化的属性。要获取相同的对象,您需要通过serializable属性发送,然后在接收器中重建Color
对象。