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.
$ npm i eslint-plugin-no-arrow-this"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.
"no-arrow-this/no-arrow-this": ["warn", {
onlyGlobals : true
}]