ESLint rule for disallowing new instances of configured classes
You'll first need to install ESLint:
$ npm i eslint --save-dev
Next, install eslint-plugin-no-new-instance
:
$ npm install eslint-plugin-no-new-instance --save-dev
Note: If you installed ESLint globally (using the -g
flag) then you must also install eslint-plugin-no-new-instance
globally.
Add no-new-instance
to the plugins section of your .eslintrc
configuration file. You can omit the eslint-plugin-
prefix:
{
"plugins": [
"no-new-instance"
]
}
Then configure the rules you want to use under the rules section.
{
"rules": {
"no-new-instance/no-new-instance": ["error", ["Event", "AnotherClass"]]
}
}
When using this rule the following code is a considered problem:
window.dispatchEvent(new Event('resize'));
The following code is considered okay:
window.dispatchEvent(new CustomEvent('resize'));