2017-03-02 92 views
1

我寫了一個jQuery插件,我使用jQuery的內部_data方法。 這導致上述編譯器錯誤。屬性不存在類型JQueryStatic

(function ($) {  

var evts = $._data(document, 'events'); // internal method 
.... 

我可以抑制這個錯誤嗎? 解決此問題的建議方法是什麼?

我知道我可以做到以下幾點:

$["_data"] 

($ as any)._data 

但我寧願作出$._data有效的方法調用。

回答

1

但我寧願讓一個有效的方法調用$ ._數據。

類型故意不允許內部API調用jQuery開發團隊不希望你使用這些方法。如果你想寫這樣的不安全的代碼,你可以自由地使用$ as any,因爲你已經想通了。

如果你想這樣不安全的訪問被安全地做,你可以擴展JQuery interface with new functionality

interface JQuery { 
    _data: any; // Replace with your types 
} 
相關問題