我正在使用Visual Studio代碼1.11.1。Visual Studio代碼JavaScript Intellisense不適用於對象屬性
對於下面的代碼,智能感知正常工作,認識了帆布變量的類型HTMLCanvasElement的:
var canvas = document.getElementsByTagName('canvas')[0];
事實上,當我寫後面跟着一個點是該變量的名字向我展示了HTMLCanvasElement的所有屬性和方法。
但是,使用下面的代碼,其中,我包裹的物體(作爲命名空間)內部的變量,智能感知已不明白,該變量是類型的HTMLCanvasElement:
// create a namespace "App"
var App;
App = {};
App.canvas = document.getElementsByTagName('canvas');
當我編寫「App.canvas」後跟一個點字符時,Intellisense不會顯示所有屬性和方法HTMLCanvasElement。實際上,它考慮App.canvas類型任何。
我試過也使用@type註釋像在下面的代碼,但結果是一樣的:
// create a namespace "App"
var App;
App = {};
/** @type {HTMLCanvasElement} */
App.canvas = document.getElementsByTagName('canvas')[0];
是否有可能使智能感知理解的變量類型的屬性對象(例如App.canvas在我的例子中)?
謝謝你非常喜歡你的答案!該解決方法完美運作。很高興知道你正在努力解決這個問題。無論如何,保持良好的工作,因爲Visual Studio Code是一個功能強大的輕量級代碼編輯器,可以使用JavaScript! :) – user1945293