【发布时间】:2016-08-01 13:35:29
【问题描述】:
到目前为止,我已经向 JQuery 添加了这样的扩展方法:
module JQueryExtensions {
export function foo() {
...
}
}
interface JQuery {
foo(): JQuery;
}
(function ($) {
$.fn.foo = function (): JQuery {
...
return this;
};
})(jQuery);
它可以作为 $('selector').foo() 之类的 JQuery 实例的扩展方法。 但是现在我需要添加一个静态函数才能像 $.foo(); 一样调用它;
我试过用“JQueryStatic”替换“JQuery”,如下所示:
module JQueryExtensions {
export function foo() {
...
}
}
interface JQueryStatic{
foo(): JQuery;
}
(function ($) {
$.fn.foo = function (): JQuery {
...
return this;
};
})(JQueryStatic);
但它给了我以下错误:“找不到名称'JQueryStatic'。”
【问题讨论】:
-
只传递
jQuery而不是JQueryStatic并使用$.foo =而不是$.fn.foo = -
谢谢@Aleksey,这很有效。请发布它作为答案。
标签: typescript