I'm trying to get the current url in emberJS but I cannot. I am doing this:
App.Route = Ember.Route.extend(Em.I18n.TranslateableProperties, {
    actions: {
        didTransition: function (transition) {
            this._super();
            console.log(window.location.href);
            console.log(this.get('router.url'));
        }
     }
});
I used to use didTransition because I need to know the current URL when all elements are load. For example: If I am in home(/home) page and navigate to contact page(/contact-page), I want to know the url '/contact-page'.
If I use window.location.href works, but not always. I thought that didTransition was called when everything else is finished, but not.
Why?
Thanks in advance
didTransition doesn't actually have a transition argument as your code suggests.  
Instead, you should use the afterModel method like so:
App.Route = Ember.Route.extend(Em.I18n.TranslateableProperties, {
    afterModel: function(resolvedModel, transition) {
        var _this = this;  // keep a reference for usage in then()
        transition.then(function() {
            console.log(_this.get('router.url'));
        )};
    }
});
Reference:
afterModel: http://emberjs.com/api/classes/Ember.Route.html#method_afterModel
didTransition: http://emberjs.com/api/classes/Ember.Route.html#event_didTransition
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With