A long parameter list can indicate that a new structure should be created to wrap the numerous parameters or that the function is doing too many
things.
Noncompliant Code Example
With a maximum number of 4 parameters:
function doSomething(param1, param2, param3, param4, param5) {
...
}
Compliant Solution
function doSomething(param1, param2, param3, param4) {
...
}
Exceptions
The rule ignores constructors where parameters are all parameter properties:
class C {
constructor(
private param1: number,
private param2: boolean,
private param3: string,
private param4: string[],
private param5: number | string
) {}
}
The rule also ignores Angular component constructors:
import { Component } from '@angular/core';
@Component({/* ... */})
class Component {
constructor(p1, p2, p3, p4, p5) {}
}