$.ajax 调用在 TypeScript 中未被识别。

3
我有以下代码:

我有以下代码:

    $.ajax({
        url: modal.href,
        dataType: 'json',
        type: 'POST',
        data: modal.$form.serializeArray()
    })
        .done(onSubmitDone)
        .fail(onSubmitFail);

TypeScript指向$.ajax并给出以下消息:

提供的参数与调用目标的任何签名不匹配。

然而,从我所看到的,我的$.ajax是正确的,并且我正确地引用了jQuery定义。 有人能建议可能是什么问题吗?

2个回答

4

关于jquery.d.ts的说明:

ajax(url: string, settings: JQueryAjaxSettings);

这是ajax函数的签名。为了让typescript接受,您应该将url从设置对象中移出,并作为参数传递。或者编辑jquery.d.ts定义,只允许函数调用使用设置。


1
这种情况已经不存在了。在当前版本的jquery.d.ts中存在签名ajax(settings: JQueryAjaxSettings);,因此他的代码现在应该可以正常工作。 - Kevin Babcock

3

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接