Microsoft/TypeScript
Auf GitHub ansehenTS2302 when using two generics with the same name in JSDoc, but not in TypeScript.
Open
#47.425 geöffnet am 13. Jan. 2022
BugDomain: JSDocHelp Wanted
Repository-Metriken
- Stars
- (48.455 Stars)
- PR-Merge-Metriken
- (Durchschn. Merge 6T 17h) (9 gemergte PRs in 30 T)
Beschreibung
Bug Report
🔎 Search Terms
ts2302 jsdoc
🕗 Version & Regression Information
- This changed between versions
4.4.4and4.5.4
⏯ Playground Link
Playground link with relevant code
💻 Code
/**
* @template T1
* @typedef {T1} TakesT1
*/
/**
* @template T1
* @template T2
*/
class Foo {
/**
* @template T1
* @template {TakesT1<T1>} T2
* ^^--- Static members cannot reference
* class type parameters.(2302)
* @param {T1} t1
* @param {T2} t2
*/
static bar(t1, t2) {
}
}
🙁 Actual behavior
"Static members cannot reference class type parameters." This is wrong because the equivalent typescript for this situation does not give an error: playground.
🙂 Expected behavior
No ts2302 error, TakesT1<T1> should use the T1 generic from the static bar() method, rather than from the Foo class.