eslint-plugin-const-immutable
This plugin forces all const
declarations to be immutable. Ecmascript 6 don't
allow variables declared with const
to be reassigned, but doesn't necassarilly
avoid mutation to the strucutures the respective variable is pointing to.
Installation
You'll first need to install ESLint:
$ npm i eslint --save-dev
Next, install eslint-plugin-const-immutable
:
$ npm install eslint-plugin-const-immutable --save-dev
Note: If you installed ESLint globally (using the -g
flag) then you must also install eslint-plugin-const-immutable
globally.
Usage
Add const-immutable
to the plugins section of your .eslintrc
configuration file. You can omit the eslint-plugin-
prefix:
Then configure the rules you want to use under the rules section.
Supported Rules
no-mutation
This rule forces the variables declared with const
to remain immutable. The following code are considered problematic.
const y = 1;y = 2; // error
const y = a: b: 'c' ;yab = 2; // error
const y = a: b: 'c' ; { if true yab = 2; // error }
const obj = a: '1' b: '2' ;const ab = obj;a += 1; // error
const obj = a: '1' ;delete obja; // error
const obj = a: '1' ;Object; // error
Sample Configuration File