我正在尝试使用 JSDoc(EcmaScript 2015、WebStorm 12 Build 144.3357.8)记录我的代码。
我有一个箭头函数,我想记录它的参数。 这两个示例有效(我得到自动完成):
/** @param {Number} num1*/
var a = num1 => num1 * num1;
//------------------------------
/** @param {Number} num1*/
var a = num1 => {
return num1 * num1;
};
但是当我想在
forEach
函数中记录一个箭头函数时,例如,自动完成不起作用(以下所有):
/** @param {Number} num1*/
[].forEach(num1 => {
return num1 * num1;
});
//------------------------------
/** @param {Number} num1*/
[].forEach(num1 => num1 * num1);
//------------------------------
[].forEach(/** @param {Number} num1*/num1 => num1 * num1);
//------------------------------
[].forEach(/** @param {Number} num1*/num1 => {
return num1 * num1;
});
有人设法完成这项工作吗?
从下一个 EAP 构建开始,WebStorm 将理解这一点:
[].forEach(/**Number*/num1 => {
return num1 * num1;
});
详情请看WEB-19280
您可以使用这种格式:
/**
* @param {(prevState: ActionState) => ActionState} setActionState
*/
function f(setActionState) {
// ...
}
或:
/**
* @param {function(prevState: ActionState): ActionState} setActionState
*/
function f(setActionState) {
// ...
}