如何在TypeScript中使用自定义事件?
在jQuery中我这样做:
$("#btnShowExplorer").click(function () {
$.event.trigger("showexplorerpf");
});
和其他地方我'听'那个事件
// bind to the special custom event
$('#idExplorerWindow').bind("showexplorerpf", function () {
// do stuff...
});
我现在将我的代码移动到TypeScript - 我有一个jQuery类型def file的引用但是$ .event.trigger无法识别..
由于
答案 0 :(得分:1)
您可能需要扩展jQuery接口。我的例子将它全部放在一个文件中,但它不必在同一个文件中 - 只是你引用的文件。
interface JQueryEvent {
trigger(name: string): void;
}
interface JQueryStatic {
event: JQueryEvent;
}
$("#btnShowExplorer").click(function () {
$.event.trigger("showexplorerpf");
});
答案 1 :(得分:0)
实际上触发器()有多个签名。
检查http://api.jquery.com/trigger/
对我来说这更好用,因为我需要通过事件发送一些数据:
interface JQueryEvent {
trigger(name: string, data:any[]): void;
}
interface JQueryStatic {
event: JQueryEvent;
}