gpt4 book ai didi

javascript - DefinitelyTyped for JQuery 插件

转载 作者:行者123 更新时间:2023-11-30 16:24:36 25 4
gpt4 key购买 nike

我正在尝试为 geocomplete jQuery 插件编写 .d.ts 文件。我是 TypeScript 的新手。我在我的 .d.ts 文件中添加了这些:

/// <reference path="jquery.d.ts"/>

interface GeoOptions {
map: string,
mapOptions? : MapOption,
}

interface MapOption extends GeoOptions {
zoom : number
}

interface JQuery {
geocomplete(): JQuery;
geocomplete(options: GeoOptions): JQuery;
}

但是我不能这样初始化插件

 $('#geomap').geocomplete(
{
map: ".map",
mapOption: { zoom: 10 },

});

我的代码有什么问题?

最佳答案

问题出在您的 interface jQuery因为 jQuery 只是变量,你不能重新声明接口(interface),jquery.d.ts 文件说,jQueryjQueryStatic< 类型的变量。因此,我们需要重新声明 jQueryStatic 而不是 jQuery

所以,亲爱的 friend ,我今天花了更多的时间为你写了你需要的)

/// <reference path="jquery.d.ts"/>

interface GeoOptions {
map: string,
mapOptions? : MapOption,
}

interface MapOption extends GeoOptions {
zoom : number
}


interface JQueryStatic {
geocomplete():JQueryStatic;
geocomplete(options:GeoOptions):JQueryStatic;
}

declare var jQuery: JQueryStatic;
declare var $: JQueryStatic;

jQuery.geocomplete();
$.geocomplete();

现在,它应该可以完美运行了!享受吧!

关于javascript - DefinitelyTyped for JQuery 插件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34305181/

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