diff --git a/packages/metadata/src/decorator-factory.ts b/packages/metadata/src/decorator-factory.ts index 08a1cba0c3e7..d64377e22b5f 100644 --- a/packages/metadata/src/decorator-factory.ts +++ b/packages/metadata/src/decorator-factory.ts @@ -157,12 +157,13 @@ export class DecoratorFactory< * @param member - Method name */ static getNumberOfParameters(target: Object, member?: string) { - if (target instanceof Function && !member) { + if (typeof target === 'function' && !member) { // constructor return target.length; } else { // target[member] is a function - return (<{[methodName: string]: Function}>target)[member!].length; + const method = (<{[methodName: string]: Function}>target)[member!]; + return method.length; } }