mirror of
https://github.com/microsoft/TypeScript.git
synced 2026-02-04 21:53:42 -06:00
fix(49200): skip duplicated method declarations (#50609)
This commit is contained in:
parent
4d91204c9d
commit
2644f28677
@ -7280,6 +7280,7 @@ namespace ts {
|
||||
&& symbol.escapedName !== InternalSymbolName.ExportEquals
|
||||
&& !(symbol.flags & SymbolFlags.Prototype)
|
||||
&& !(symbol.flags & SymbolFlags.Class)
|
||||
&& !(symbol.flags & SymbolFlags.Method)
|
||||
&& !isConstMergedWithNSPrintableAsSignatureMerge) {
|
||||
if (propertyAsAlias) {
|
||||
const createdExport = serializeMaybeAliasAssignment(symbol);
|
||||
|
||||
@ -0,0 +1,17 @@
|
||||
//// [a.js]
|
||||
export default {
|
||||
methods: {
|
||||
foo() { }
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
//// [a.d.ts]
|
||||
declare namespace _default {
|
||||
namespace methods {
|
||||
function foo(): void;
|
||||
}
|
||||
}
|
||||
export default _default;
|
||||
@ -0,0 +1,10 @@
|
||||
=== /a.js ===
|
||||
export default {
|
||||
methods: {
|
||||
>methods : Symbol(methods, Decl(a.js, 0, 16))
|
||||
|
||||
foo() { }
|
||||
>foo : Symbol(foo, Decl(a.js, 1, 14))
|
||||
}
|
||||
}
|
||||
|
||||
@ -0,0 +1,13 @@
|
||||
=== /a.js ===
|
||||
export default {
|
||||
>{ methods: { foo() { } }} : { methods: { foo(): void; }; }
|
||||
|
||||
methods: {
|
||||
>methods : { foo(): void; }
|
||||
>{ foo() { } } : { foo(): void; }
|
||||
|
||||
foo() { }
|
||||
>foo : () => void
|
||||
}
|
||||
}
|
||||
|
||||
10
tests/cases/compiler/declarationEmitMethodDeclaration.ts
Normal file
10
tests/cases/compiler/declarationEmitMethodDeclaration.ts
Normal file
@ -0,0 +1,10 @@
|
||||
// @allowJs: true
|
||||
// @checkJs: true
|
||||
// @declaration: true
|
||||
// @emitDeclarationOnly: true
|
||||
// @filename: /a.js
|
||||
export default {
|
||||
methods: {
|
||||
foo() { }
|
||||
}
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user