💼 This rule is enabled in the ✅ recommended
config.
🔧 This rule is automatically fixable by the --fix
CLI option.
Call super in lifecycle hooks.
When overriding lifecycle hooks inside Ember Components, Controllers, Routes, Mixins, or Services, it is necessary to include a call to super.
Examples of incorrect code for this rule:
import Component from '@ember/component';
export default Component.extend({
init() {
this.set('items', []);
}
});
import Component from '@ember/component';
export default Component.extend({
didInsertElement() {
// ...
}
});
import Component from '@ember/component';
class Foo extends Component {
init() {
// ...
}
}
Examples of correct code for this rule:
import Component from '@ember/component';
export default Component.extend({
init(...args) {
this._super(...args);
this.set('items', []);
}
});
import Component from '@ember/component';
export default Component.extend({
didInsertElement(...args) {
this._super(...args);
// ...
}
});
import Component from '@ember/component';
class Foo extends Component {
init(...args) {
super.init(...args);
// ...
}
}
import Component from '@ember/component';
class Foo extends Component {
didInsertElement(...args) {
super.didInsertElement(...args);
// ...
}
}
Name | Description | Type | Default |
---|---|---|---|
checkInitOnly |
Whether the rule should only check the init lifecycle hook and not other lifecycle hooks. |
Boolean | false |
checkNativeClasses |
Whether the rule should check lifecycle hooks in native classes (in addition to classic classes). | Boolean | true |