Ember/5/App Controller Router Props

1.0.1Last update Jul 24, 2024
by@Codemod
Ember
migration

This codemod replaces all occurrences of this.currentRouteName with this.router.currentRouteName and this.currentPath with this.router.currentPath.

Before

import Controller from '@ember/controller';
import fetch from 'fetch';
export default Controller.extend({
store: service('store'),
actions: {
sendPayload() {
fetch('/endpoint', {
method: 'POST',
body: JSON.stringify({
route: this.currentRouteName,
}),
});
},
},
});

After

import Controller from '@ember/controller';
import fetch from 'fetch';
export default Controller.extend({
router: service('router'),
store: service('store'),
actions: {
sendPayload() {
fetch('/endpoint', {
method: 'POST',
body: JSON.stringify({
route: this.router.currentRouteName,
}),
});
},
},
});

Build custom codemods

Use AI-powered codemod studio and automate undifferentiated tasks for yourself, colleagues or the community

background illustrationGet Started Now