Est*_*ask 12 node.js node-webkit nw.js
在Node context(node-main)中执行时,
setTimeout(function () {
console.log(nw);
}, 20);
Run Code Online (Sandbox Code Playgroud)
投
nw未定义
因为WebKit上下文没有准备好(从windowNW.js <= 0.12开始,window.nw在NW.js> = 0.13中,从一开始就不可用).和
setTimeout(function () {
console.log(nw);
}, 200);
Run Code Online (Sandbox Code Playgroud)
工作正常,但setTimeout看起来像一个黑客,将其设置为安全延迟值可能会导致不良后果.
如何nw从Node上下文中检查WebKit上下文的可用性?有没有合理的方式,比如可以处理的事件?
我最初提出的解决方案看起来像
应用程序-node.js
process.once('webkit', () => {
console.log(nw);
});
Run Code Online (Sandbox Code Playgroud)
应用程序.html
<html>
<head>
<script>
global.process.emit('webkit');
</script>
...
Run Code Online (Sandbox Code Playgroud)
我很高兴知道已经有一个事件可供监听,因此跨平台客户端脚本可以省略与 NW 相关的代码。
| 归档时间: |
|
| 查看次数: |
933 次 |
| 最近记录: |