TypeScript fixes some problems with this. Arrow functions fix some problems with this. These solutions do not fix ALL problems with this.
this
Consider this code that cannot be solved with TypeScript or arrow functions:
import { EventEmitter2 } from 'eventemitter2' const events = new EventEmitter2({ wildcard: true }) events.on('button.*', function() { console.log('event:', this.event) }) events.emit('button.click')
You fix it with an explicitly typed this.
import { EventEmitter2 } from 'eventemitter2' const events = new EventEmitter2({ wildcard: true }) events.on('button.*', function(this: EventEmitter2) { console.log('event:', this.event) }) events.emit('button.click')
Are you sure you want to hide this comment? It will become hidden in your post, but will still be visible via the comment's permalink.
Hide child comments as well
Confirm
For further actions, you may consider blocking this person and/or reporting abuse
We're a place where coders share, stay up-to-date and grow their careers.
TypeScript fixes some problems with
this
. Arrow functions fix some problems withthis
. These solutions do not fix ALL problems withthis
.Consider this code that cannot be solved with TypeScript or arrow functions:
You fix it with an explicitly typed
this
.