💼 This rule is enabled in the ✅ recommended
config.
Arrow functions should not be used in computed properties because they are unable to access other properties (using this.property
) of the same object. Accidental usage can thus lead to bugs.
This rule disallows using arrow functions in computed properties.
Examples of incorrect code for this rule:
import EmberObject, { computed } from '@ember/object';
const Person = EmberObject.extend({
fullName: computed('firstName', 'lastName', () => {
return `${this.firstName} ${this.lastName}`;
})
});
Examples of correct code for this rule:
import EmberObject, { computed } from '@ember/object';
const Person = EmberObject.extend({
fullName: computed('firstName', 'lastName', function () {
return `${this.firstName} ${this.lastName}`;
})
});
Name | Description | Type | Default |
---|---|---|---|
onlyThisContexts |
Whether the rule should allow or disallow computed properties where the arrow function body does not contain a this reference. |
Boolean | false |