私はこのようなモジュールを持っているを参照してください。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}
- その後、
@returns
そのシンボル @alias
、上部に@module
を宣言 - これは残念ながら完全に今、シンボルを引き継ぐように見えます私はもう何も持っていません。module.exports
私はこれが世界の終わりではないことを認識しています。しかし、私はすべてが一緒にフィットするように近くにsoooooされているように感じる、それは私を狂って運転しています。
WebStorm/PhpStormは、JsDocでこれを行う適切な方法は何ですか?