基本上,我已经关注了 VSCode: Is it possible to supress experimental decorator warnings为了传达这样的信息,但没有产生任何效果。
首先,我收到了这条消息:
“(node:15077)DeprecationWarning:node -debug不建议使用。请使用node --inspect”。我在某处读到了在launch.json中添加“protocol”:“auto”(老实说,我不知道我自动设置了什么)。
它改变了本主题中提到的警告。好吧,我已经将jsconfig.json添加到项目根目录,但它似乎没有改变任何东西。
我不知道它是否相关,但我注意到Visual Studio Code About指向Node 6.5.0,而我的本地节点是7.7.4。
最后,但并非最不重要的是,这种警告意味着什么?
launch.json
{
// Use IntelliSense to learn about possible Node.js debug attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"type": "node",
"request": "launch",
"name": "Launch Program",
"program": "${workspaceRoot}/server.js",
"protocol": "auto"
},
{
"type": "node",
"request": "attach",
"name": "Attach to Process",
"address": "localhost",
"port": 5858
}
]
}
jsconfig.json
{
"compilerOptions": {
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"module": "amd",
"target": "ES6"
},
"files": []
}
Debian shell
demetrio@nodejs ~/tool/elasticsearch-head $ node -v
v7.7.4
Visual Studio代码关于:
Version 1.10.2
Commit 8076a19fdcab7e1fc1707952d652f0bb6c6db331
Date 2017-03-08T14:00:46.854Z
Shell 1.4.6
Renderer 53.0.2785.143
Node 6.5.0
答案 0 :(得分:0)
在启动配置中设置协议告诉visual studio代码使用哪个调试器。 可以使用以下命令指定原始调试器:
'protocol': 'legacy'
可以使用以下命令指定较新的调试器:
'protocol': 'inspector'
最后是选项:
'protocol': 'auto'
允许visual studio代码决定使用哪个调试器。它看起来像2月发布的代码(1.10),它使用了更新的节点版本> = 6.9。对于3月发布的代码(1.11),它仅对节点版本8.x使用较新的代码。
有关两种不同调试器的更多信息,请参阅以下链接:
这是导致此消息的较新调试器。指定您需要旧版调试器,或将代码升级到版本1.11(并使用节点< v8)将其删除。