簡體   English   中英

JavaScript 在自調用 function 中聲明的類的智能感知在 Visual Studio 中不起作用

[英]JavaScript Intellisense for classes declared in a self-invoking function does not work in Visual Studio

我想使用 Visual Studio 的 IntelliSense,但在這種情況下它不起作用。 這是我正在嘗試做的一個例子:

// IntelliSense doesn't work.
Namespace.Class = (function () {
    /** A class. */
    function Class() {
        /** A method. */
        this.method = function () {
            console.log("test 1");
        };
    }
    return Class;
}());

// Intellisense works.
/** A class. */
Namespace2.Class = function () {
    /** A method. */
    this.method = function () {
        console.log("test 2");
    };
};

IntelliSense 顯示的示例

不工作:

不工作。

在職的:

作品!

筆記:

試試下面的代碼片段。 由於某些未知原因,Intellisense 將 function 的結果推斷為typeof Class而不僅僅是Class 要修復它,再次將類型轉換回Class

Namespace.Class = (function () {
  /** A class. */
  function Class() {
    /** A method. */
    this.method = function () {
        console.log("test 1");
    };
  }
  return /** @type {Class} */(/** @type {unknown} */(Class));
}());

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM