1
我有一個模塊是這樣的:JsDoc和WebStorm:請參閱出口
/**
* Do something with target. A bunch of these methods
* @param target
*/
function doJob(target) {
target.something = 'value';
}
module.exports = {
doJob
};
WebStorm正確地認識到,doJob
由該模塊輸出,並提供不錯的智能感知。
現在我想添加設施,以便我可以將所有導出的方法與目標綁定。
module.exports = {
doJob
};
const oldExports = Object.assign({}, module.exports);
module.exports.bind = function (target) {
const newExports = {};
for (var key in oldExports) {
newExports[key] = oldExports[key].bind(null, target);
}
return newExports;
};
的想法是,消費者可以得到正常出口和使用功能的過程風格,也可以得到相同的功能集,勢必當地target
。
我現在的問題是,我該如何告訴WebStorm(使用JsDoc)bind()
函數的返回值與module.exports
相同?
事情我已經嘗試:
@returns {module.exports}
@returns {exports}
- 在頂部聲明
@module
,然後@returns
該符號 @alias
- 這個不幸似乎完全接管的象徵,所以現在我不再有任何東西module.exports
我意識到這不是世界的盡頭。但是我覺得我很接近讓所有事情合起來,這讓我發瘋。
任何想法什麼是在JsDoc中做到這一點的正確方法,WebStorm/PhpStorm將知道如何使用它的附加好處?