Microsoft/TypeScript
Auf GitHub ansehenString completions for `keyof T` not shown when an object literal `T` was provided in a prior argument
Open
#47.479 geöffnet am 17. Jan. 2022
Domain: LS: Completion ListsExperience EnhancementHelp WantedSuggestion
Repository-Metriken
- Stars
- (48.455 Stars)
- PR-Merge-Metriken
- (Durchschn. Merge 6T 17h) (9 gemergte PRs in 30 T)
Beschreibung
Bug Report
🔎 Search Terms
Incorrect suggestions
🕗 Version & Regression Information
This bug occurs in v4.5.4 and nightly version. (Possibly every version)
⏯ Playground Link
Playground link with relevant code
💻 Code
type Methods = {
[key: string]: (param: {
apple: 'apple'
}) => any
}
function testFunc<M extends Methods>(options: {
methods: M,
keys: keyof M
}): void {}
testFunc({
methods: {
myMethod: (param) => {
console.log(param.apple)
}
},
keys:
})
🙁 Actual behavior
When hovering the word "keys" in line 18, it shows its type is "myMethod". And when i start typing for its value, "myMethod" is not being suggested.
🙂 Expected behavior
"myMethod" should be suggested when typing the value in line 18.