JQueryStatic 类型上不存在属性
Posted
技术标签:
【中文标题】JQueryStatic 类型上不存在属性【英文标题】:Property does not exist on type JQueryStatic 【发布时间】:2017-07-22 11:45:47 【问题描述】:我编写了一个 jQuery 插件,其中使用了 jQuery 的内部 _data 方法。 这会导致上面的编译器错误。
(function ($)
var evts = $._data(document, 'events'); // internal method
....
我可以抑制这个错误吗?如何抑制? 解决此问题的推荐方法是什么?
我知道我可以做到以下几点:
$["_data"]
或
($ as any)._data
但我更愿意将$._data
设为有效的方法调用。
【问题讨论】:
【参考方案1】:但我更愿意将 $._data 设为有效的方法调用。
这些类型故意不允许内部 API 调用,因为 jquery 团队不希望您使用这些方法。如果您想编写这样的不安全代码,您可以随意使用$ as any
,正如您所知道的那样。
如果您希望安全地完成此类不安全的访问,您可以扩展JQuery
interface with new functionality
interface JQuery
_data: any; // Replace with your types
【讨论】:
【参考方案2】:你可以试试:
declare var $: any;
【讨论】:
以上是关于JQueryStatic 类型上不存在属性的主要内容,如果未能解决你的问题,请参考以下文章