The params
attribute of the transition will reference the current route's params, not the target. What you need is to look at the models provided to the transition via its providedModels
attribute. Your code should look like this:
willTransition: function(transition) {
if ((this.get('routeName') === transition.targetName) &&
(this.get('currentModel') === transition.providedModels[transition.targetName])) {
transition.abort();
return;
}
// ... other code here ...
}