2
在下面的代碼定義JSDoc型我想限定使用testSettings
變量ApplicationSettings
型的形狀,使得內部useSettings
函數IDE將知道哪些屬性的settings
對象上訪問:使用可變[WebStorm友好]
/** @typedef ApplicationSettings */
var testSettings = {
apiService: {},
configuration: {}
};
/**
* @param {ApplicationSettings} settings
*/
function useSettings(settings) {
console.log(settings.apiService); // apiService is not recognized here
console.log(settings.configuration); // same for configuration
}
不幸的是,似乎@typedef
在這種情況下不是有效的註釋。是否有可能告訴WebStorm如何在不顯式指定JSDoc中的所有屬性的情況下顯示類型?
謝謝,這工作,但如果設置對象和函數是在不同的模塊?我真的不希望函數註釋依賴於'testSettings'變量的確切名稱。它可以很容易地在明天重新命名,從開發者的角度來看,類型註釋似乎更「永久」。 –