如何使用SignalR方法扩充JQueryStatic

时间:2016-11-08 14:18:44

标签: jquery typescript signalr definitelytyped

我正在使用TypeScript 2.0和jQuery的明确类型的声明文件。我也在使用SignalR。 SignalR依赖于jQuery并为其添加了一些属性。举个例子,你可以写“$ .connection.hub.logging = true;”其中SignalR为jQuery添加了“连接”。

jQuery的明确类型化声明文件定义了JQueryStatic接口,但不导出JQueryStatic,因为只导出了$。 $是JQueryStatic类型。

我的问题是,如何使用TypeScript 2.0编写代码,该代码使用新属性p1的定义来扩充JQueryStatic接口,其中“connection”是一个示例?

1 个答案:

答案 0 :(得分:1)

以下是几种方式:

  1. 确保您使用的是最新版本的SignalR type definition。它看起来好像是SignalR definition is already augmenting jQueryStatic
    1. 使用TypeScript's declaration merging通过将下面的代码段添加到TypeScript文件的顶部来扩充jQueryStatic。

      declare global { interface JQueryStatic { signalR: SignalR; connection: SignalR; hubConnection: SignalR.Hub.HubCreator; } }