gpt4 book ai didi

jQuery Error with 'on' statement Argument of type '"focus "' is not assignable to parameter of type ' PlainObject
转载 作者:搜寻专家 更新时间:2023-10-30 21:49:12 26 4
gpt4 key购买 nike

我收到以下错误:

TS2345: Argument of type '"focus"' is not assignable to parameter of type 'PlainObject void> | EventHandlerBase

ERROR in ./Scripts/Common/kendo.ts

在我的 Typescript 文件中使用这个 jQuery 语句:

$(() => {
$("body").on("focus", ".k-datepicker input, .k-datetimepicker input", (e: Event) => {
const target: JQuery = $(e.target);
if (target.closest(".k-widget").hasClass("k-datepicker")) {
target.data("kendoDatePicker").open();
} else {
target.data("kendoDateTimePicker").open("date");
}
});
});

在这里查看文档 http://api.jquery.com/on/没有版本的 on 函数甚至将事件处理程序作为第一个参数。 Visual Studio 中的 Intellisense 也确认参数应该是正确的。

我在我的 package.json 中使用以下版本:

"@types/jquery": "^3.3.0",
...
"jquery": "^3.3.1",
...
"typescript": "^2.5.0"

有什么想法会导致此错误吗?

最佳答案

问题是 Event 声明。 jQuery 将类型为 jQuery.Event(不是 Event)的对象传递给您的回调。

解决方案是删除 Event 声明。

$(() => {
$("body").on("focus", ".k-datepicker input, .k-datetimepicker input", (e) => {
const target: JQuery = $(e.target);
if (target.closest(".k-widget").hasClass("k-datepicker")) {
target.data("kendoDatePicker").open();
} else {
target.data("kendoDateTimePicker").open("date");
}
});
});

关于jQuery Error with 'on' statement Argument of type '"focus "' is not assignable to parameter of type ' PlainObject<false |事件处理程序<HTMLElement,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48789588/

26 4 0

Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com