如何修复DeprecationWarning:' root'已被弃用,请使用全球'

时间:2016-06-29 03:36:06

标签: node-webkit

我尝试在node webkit中打开一个新窗口但在后台控制台中会抛出以下错误:

  

弃用警告:' root'已弃用,请使用&global;'

我正在使用NWJS v0.15.3,但在他们已知的问题中没有提到这个问题。

以下是我的示例代码:

<intent-filter>

2 个答案:

答案 0 :(得分:1)

这不是错误,而是警告。但 这可能是错误的征兆。

您的代码中或某个库的代码中的某处 您正在使用的是对全局的引用 变量“根”。

这本身不是错误,因为这样的变量 确实存在,并且是“全局”的别名。但是开发商 建议您不要使用它,您应该 使用'global'代替,如记录在: https://nodejs.org/api/deprecations.html

看到警告可能表明 您的代码中有错误。也许 您是唯一阅读或写作的人 到全局变量“ root”。

在我的情况下,我有一个名为“ rootSpec”的变量。 但是当我应该阅读它的价值时 我将它拼写为“ root”。

所以我在日志中看到了弃用警告 并开始寻找任何参考 “扎根”并找到一个地方 我在错误地使用它。

我的(错误)代码可能有 在“根”的某些字段上写一些东西。 那实际上可以覆盖一些 内置的全局变量,甚至没有意识到 那一直在进行。那可能造成难以发现,难以诊断 难以修复的错误。

因此会看到弃用警告 真的使我警惕可能的事
我程序中的杀手bug。

答案 1 :(得分:-2)

您的代码不正确。在此处查看文档:{​​{3}}

nw.Window.open('app/newWin/newWin.html', {
    new_instance: true
}, function (newWin ) {
    // opened
    console.log("opened", newWin);
});