在Visual Studio代碼(VSCode)中,我正在使用JavaScript ES5的遺留應用程序。我注意到IntelliSense不適用於我安裝的所有類型。 Intellisense正在爲全球類型工作,但不適用於外部類型?由於這是遺留代碼,我寧願不更改源.js文件以使Intellisense正常工作。Visual Studio Code Intellisense和JavaScript ES5
全球類型的Intellisense,如角和jquery,似乎工作。但是,用於外部類型的智能感知不起作用。
在這裏你可以看到我有四種類型的安裝。 Angular和jQuery被安裝爲全局變量。 LoDash和Ramda作爲外部安裝。我有一個jsconfig.json文件創建;它是空的。通過使用jsconfig.json文件,IntelliSense適用於Angular和Jquery,但不適用於LoDash和Ramda。
在接下來的兩個圖像,你可以看到,智能感知工作角和jQuery。
現在,我使用LoDash,但智能感知不工作。
如果我導入LoDash庫,然後智能感知的作品。由於代碼是傳統的ES5 JavaScript和導入不支持ES5,使用導入不是一個可行的選擇。
一個好的測試將得到智能的LoDash工作。我想輸入「_」。並讓VSCode顯示LoDash屬性和方法的列表,而不在源代碼中包含任何其他代碼。
有誰知道如何解決這個問題?如果是這樣,請提供對您有用的東西。
資源
BarDev
類型特定於TypeScript(因此您看到「.ts」文件結尾)。更改文件名爲「main.ts」,我猜它會起作用。將TypeScript編譯器設置爲定位ES5,就完成了。 –
@MikeMcCaughan - 基於我的解毒證據,intellisense與AngularJS和jQuery一起使用,沒有擴展名爲「.ts」的文件。同樣在VSCode文檔中,它討論了JavaScript文件可以使用智能感知。 JavaScript的 - 豐富的編輯支持 https://code.visualstudio.com/docs/languages/javascript 我在typings.json文件注意到,角度和jQuery位於「globaDependency」,但lodash位於「依賴」。 我的確嘗試在全球安裝lodash類型,但我收到一個錯誤消息,類型是一個外部模塊。 –
我沒有提到任何有關智能感知的內容。我正在專門討論打字,定義文件或「.d.ts」文件。您的屏幕截圖在「typings \ global」下顯示一個「角度」文件夾。可能想在那裏偷看:)。 JavaScript中的Intellisense使用JavaScript分析引擎來發現項目中有關「.js」文件的元數據。 –