Microsoft/monaco-editor
在 GitHub 查看[Bug] Duplicated function in intellisense after `addExtraLib`
Open
#3,580 创建于 2023年2月21日
bughelp wantedopen for PRtypescript
仓库指标
- Star
- (14,836 star)
- PR 合并指标
- (平均合并 6小时 26分钟) (30 天内合并 15 个 PR)
描述
Reproducible in vscode.dev or in VS Code Desktop?
- Not reproducible in vscode.dev or VS Code Desktop
Reproducible in the monaco editor playground?
- Not reproducible in the monaco editor playground
Monaco Editor Playground Link
Monaco Editor Playground Code
// The Monaco Editor can be easily created, given an
// empty container and an options literal.
// Two members of the literal are "value" and "language".
// The editor takes the full size of its container.
monaco.editor.create(document.getElementById("container"), {
value: "function hello() {\n\talert('Hello world!');\ntrim()}",
language: "typescript",
});
monaco.languages.typescript.typescriptDefaults.addExtraLib(
'function trim(s: string):string;',
'index.d.ts',
);
Reproduction Steps
hover over trim function in Preview pane.
Tooltip will be shown: 'function trim(s: string): string (+1 overload)'
(+1 overload) is not expected (since I only defined a single trim function).
Similar thing happens if I type trim( to see autocompletion. It shows like there are 2 overloads of trim function, while actually there's only one.

Actual (Problematic) Behavior
editor behaves like addExtraLib is called twice and shows 2 identical overloads of a function defined in addExtraLib
Expected Behavior
I'd expect a single overload of trim function to exist in autocomplete.
Additional Context
No response