Kotlin 如何创建((KeyboardEvent)->;dynamic)类型的lambda?在科特林
我想听听键盘事件。因此,我将lambda设置为Kotlin 如何创建((KeyboardEvent)->;dynamic)类型的lambda?在科特林,kotlin,dynamic,lambda,kotlin-js,Kotlin,Dynamic,Lambda,Kotlin Js,我想听听键盘事件。因此,我将lambda设置为document.onkeypress,其类型应为: var onkeypress: ((KeyboardEvent) -> dynamic)? 目前我得到了这个: Lambda应该返回动态类型,我确实返回了它,我不明白这个结构有什么问题。正如我所看到的,您已经在上找到了答案 您使用的是什么用户界面系统?我不认识像KeyboardEvent和dynamic这样的类,它们奇怪地没有大写。你能给我看看这些课吗?显然Keyboard.asDyna
document.onkeypress
,其类型应为:
var onkeypress: ((KeyboardEvent) -> dynamic)?
目前我得到了这个:Lambda应该返回动态类型,我确实返回了它,我不明白这个结构有什么问题。正如我所看到的,您已经在上找到了答案
您使用的是什么用户界面系统?我不认识像
KeyboardEvent
和dynamic
这样的类,它们奇怪地没有大写。你能给我看看这些课吗?显然Keyboard.asDynamic()
不会返回dynamic
实例。这是Kotlin js,org.w3c.dom.events.keyboardEvent。我的第一个代码中的问题是window.onload lambda需要某个对象的返回表达式。但赋值在kotlin中不是一个表达式。所以我们需要在lambda块的末尾返回一些对象(单位)。
window.onload = {
document.onkeypress = { event: KeyboardEvent ->
// Do work
Unit
}
Unit
}