Skip to content

wentout/eslint-plugin-no-arrow-this

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

eslint-plugin-no-arrow-this

Proposal

This is a eslint plugin for warning "this" keyword inside of arrow functions. The key is about to get rid of using this in sort of global context.

For example, you have a code with regular function:

(function () {
  var me = this;
  console.log(me);
}.bind(123))();

And then, somehow, may be after re-factoring, you will change that regular function to arrow function:

(() => {
  var me = this;
  console.log(me);
}).bind(123)();

So, starting from that pont me no longer follows to the binded context, and receives global or window instead.

This plugin will help you to find this conditions.

Example .eslintrc configuration

installation

$ npm i eslint-plugin-no-arrow-this

typical config for everything

"plugins": [
  // ... other plugins
  "eslint-plugin-no-arrow-this"
],
// ... other stuff
"rules": {
  // ... other rules
  "no-arrow-this/no-arrow-this": "warn"
}

So far here you will receive warning on eslint.

How to check ONLY global~window context mess

  "no-arrow-this/no-arrow-this": ["warn", {
    onlyGlobals : true
  }]

to play with this rule

on astexplorer.net

Releases

No releases published

Packages

No packages published