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

新手上路,请多包涵

我正在使用 Visual Code 学习 Javascript,每次出现使用“事件”的类似练习(事件在代码中显示为带有删除线,如 e̶v̶e̶n̶t̶)时,由于这个恼人的问题,我无法完成它。在描述中弹出一个显示问题的警告(“event is deprecated ts(6385)”)。我在论坛和 stack over flow 上查找,但我找不到这个问题的任何答案,只有几个地方说 lib dom 和 @deprecated,但我不知道该怎么做。

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

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

}

function sayMyLastName(){
    console.log(event)

}

原文由 AllesonCoelho 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 2.6k
1 个回答

听起来您正在为一个简单的 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 事件处理程序。您不应该使用全局对象;你不应该 需要 使用全局对象。

这里有一些很好的教程:

强烈建议:

如果您正在学习 JavaScript,请确保您的学习材料是最新的( 绝对 涵盖 ES6!)。这是一本好书: Secrets of the JavaScript Ninja 2nd Edition

原文由 paulsm4 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
logo
Stack Overflow 翻译
子站问答
访问
宣传栏