microsoft / microsoft/TypeScript
@description JSDoc tag interferes with callback parameter documentation
@orta がすでに取り組んでいます。
2020年9月2日 から。
- 主要言語
- Go
- スター
- 111k
- フォーク
- 14.4k
- 平均マージ
- 1日 19時間
- マージ済み PR(30日)
- 117
説明
TypeScript Version: 3.8.3
Search Terms: jsdoc param
Expected behavior:
Below code creates no errors, type of x is recognized as (value: number) => boolean
Actual behavior:
Type of x is () => boolean, the invocation creates a type error.
Removing the @description tag makes the code work as expected.
My interpretation of https://jsdoc.app/tags-description.html is that you should be able to place @description anywhere in the comment without interfering with other tags:
By using the @description tag, you can place the description anywhere in the JSDoc comment.
Related Issues: Ran into a crash #37265 while trying to repro this with template parameters.
Code
// @ts-check
/**
* @callback IterablePredicate
* @description return true if given element of iterable matches an internal condition
* @param {number} value the current item being evaluated
* @returns {boolean} true if the entry satisfies given condition
**/
/**
* @type {IterablePredicate}
*/
let x;
x(3) // Expected 0 arguments, but got 1.
Compiler Options
{
"compilerOptions": {
"noImplicitAny": true,
"strictFunctionTypes": true,
"strictPropertyInitialization": true,
"strictBindCallApply": true,
"noImplicitThis": true,
"noImplicitReturns": true,
"alwaysStrict": true,
"esModuleInterop": true,
"checkJs": true,
"allowJs": true,
"declaration": true,
"experimentalDecorators": true,
"emitDecoratorMetadata": true,
"moduleResolution": 2,
"target": "ES2017",
"jsx": "React",
"module": "ESNext"
}
}
Playground Link: Provided
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
評価
この issue はまだ評価されていません。