我在Windows 10,應用電子(V1.2.2)訪問DOM樹,我有一個很大的問題,我的項目之一:從電子子進程
我有輪流到渲染器的腳本處理並創建子進程來運行一些特殊的代碼。我需要在子進程內運行的代碼來訪問DOM。 當創建進程(使用child_process.fork())時,我使用內置IPC通道發送一些信息,例如時間戳,關於將在子進程內運行的腳本的一些信息...
但當我嘗試發送一個類的實例,它不會在所有的工作:
//main.js
const child_process = require('child_process');
const child = child_process.fork('child.js');
child.send({ready: { version: '0.0.1', dom: document }});
// child.js
process.on('message', (m) => {
typeof m.dom.body.appendChild; // ReferenceError
});
我想這是IPC通信只能傳遞一些特定的DATAS的限制,但我知道這是可能送服務器或使用IPC通道的套接字實例,所以我不明白爲什麼無法傳輸文檔。
所以我正在尋找一種方法來訪問子進程的DOM,但我沒有找到任何解決方案。 子進程內部的代碼需要在DOM上做很多操作,不能使用IPC通信來訪問它,否則性能會太慢。
所以,我的問題是:有什麼方法可以從子進程訪問DOM?