TypeScript JSDoc @param 不起作用,对于函数变量

huwehgph  于 6个月前  发布在  TypeScript
关注(0)|答案(2)|浏览(58)

TypeScript 版本: 3.5.1, 3.7.5
搜索关键词: jsdoc, param, variable, function
代码

function makeFoo() {
    return (x : number) => {}
}

/**
* @param x - Comment
*/
const foo = makeFoo();
foo(/* No comment in hover */);

/**
* @param x - Comment
*/
function foo2(x: number) {
    
}
foo2(/* Comment in hover */)

预期行为:

实际行为:

**Playground 链接:**Playground
相关问题: 没有找到任何相关问题

对于我的用例,我经常使用工厂函数来创建函数。

export const lPad = makeOperator3<string, bigint, string, string>(/*args*/);
export const rPad = makeOperator3<string, bigint, string, string>(/*args*/);
export const lTrim = makeOperator1<string, string>(/*args*/);
export const rTrim = makeOperator1<string, string>(/*args*/);

我想给这些变量添加 JSDoc,因为单独的参数名描述不够详细( left, mid, right, arg, etc. )。但是在 VS Code 和 Playground 中,@param 的 JSDoc 悬停时似乎没有显示出来。

px9o7tmv

px9o7tmv1#

澄清:
对于 foo/foo2,有一个悬停提示。这些提示可以正常显示。
每个参数也有悬停提示。当你填充函数调用的参数列表时,它们会显示出来。但是参数悬停提示缺少JSDoc。

wribegjk

wribegjk2#

我也需要这个,我们使用特定的模式来导出模块,其中所有内容都在一个导出的物体下定义,而JSDoc自动补全不起作用:

const model = (module.exporst = {});

/** JSDoc tags will not autocomplete here */
model.method = (param1, param2) => {};

关于这个问题的小屏幕录像: https://d.pr/i/IPpCGR

相关问题