我正在尝试调用事件,但我的可视化代码说(“事件已弃用 ts(6385)”)

All*_*lho 4 javascript function deprecated dom-events deprecation-warning

我正在使用 Visual Code 学习 Javascript,每次使用“事件”的类似练习(事件显示在代码中,带有删除线,如 e?v?e?n?t?)时,我无法完成它,因为这个烦人的问题。在描述中弹出一个警告显示问题(“事件已被弃用 ts(6385)”)。我在论坛中寻找并堆栈溢出,但我找不到这个问题的任何答案,只有几个地方说 lib dom 和 @deprecated,但我不知道该怎么做。

拜托,任何帮助和学习解决这个问题的方法都会非常有用。

function sayMyFirstName(element){
    alert("My First name is..." + element.value)

}

function sayMyLastName(){
    console.log(event)

}
Run Code Online (Sandbox Code Playgroud)

pau*_*sm4 8

听起来您正在为一个简单的 JS 项目获得TypeScript验证。您可以尝试以下几种方法:

  • 在您的设置文件 (settings.json) 中:

    "typescript.validate.enable": false

... 或者 ...

  • 在您的 .js 源文件中:

    /*tslint:disabled*/


一个单独的问题是为什么您首先会收到“弃用”警告。这就是原因:

https://developer.mozilla.org/en-US/docs/Web/API/Window/event

只读 Window 属性事件返回当前由站点代码处理的事件。在事件处理程序的上下文之外,该值始终未定义。

您应该避免在新代码中使用此属性,而应使用传递给事件处理函数的 Event。此属性并未得到普遍支持,即使支持也会给您的代码带来潜在的脆弱性。

换句话说,“事件”真的应该作为参数传递给 JS事件处理程序。你不应该使用全局对象;你不应该NEED使用全局对象。

这里有一些很好的教程:

强烈建议:

如果您正在学习 JavaScript,请确保您的学习材料是最新的(绝对涵盖 ES6!)。这是一本好书:JavaScript Ninja 的秘密第 2 版