我正在使用模仿nodejs require的自定义要求功能,而且效果很好。
然而,在电子中,我得到了
SecurityError: An attempt was made to break through the security policy of the user agent.
在自定义代码中调用window.addEventListener
时。
如果我能阅读电子'需要'功能的源代码,我可能会理解为什么我的版本会失败。
答案 0 :(得分:1)
您正在寻找的应该是GitHub。
https://github.com/atom/atom 要么... https://github.com/atom/electron 要么... https://github.com/atom/node
根据您的更新,您正在寻找的代码(关于共享全局上下文)实际上是:https://github.com/atom/node/blob/atom-iojs/lib/module.js#L399
因为Electron不包含最新版本的Node.js,所以我认为值得一提。
答案 1 :(得分:1)
使用toString
进行检查后,除了Module._contextload
为真时的编译外,源与nodejs相同。这部分似乎已经过优化了。
我的代码现在通过使用编译sharing the global context正常工作,因此表现为来自同一个来源(铬中的XSS预防)。这与电子中的require
功能相同。