ngRoute allows you to specify path params as Daphne described minus the abstract state business. To get at the params you would use $routeParams.
Sent from my iPad > On May 26, 2014, at 11:53 PM, Daphne Maddox <[email protected]> wrote: > > I don't know ngRoute so I can't help you with that. > > In ui-router you can use a url pattern like '/:lang' in an abstract root > state. By defining it that way, you can have a high-level controller that > reads from $params.lang and sets the value for angular-translate, so that all > of your pages are rendered to the specified state for you. It is my > suspicion that ngRoute doesn't give you this capability, so I'm not sure how > it would best be done. > > > >> On Monday, May 26, 2014 6:14:24 PM UTC-7, Joberto Diniz wrote: >> Hi, we also have to implement this feature. >> We're using angular-translate and ngRoute. >> >> How would be the best way to change the language specified in the route? >> Maybe listen to routeChange and then call the angular-translate to change >> the language, is that the a reasonable way to deal with this? >> Why do I have to deal this in the controller, like you suggested? >> >>> On Sunday, May 25, 2014 3:07:45 AM UTC-3, Daphne Maddox wrote: >>> I'm going to sound like a broken record here, but this seems like a perfect >>> use case for a combination of ui-router and angular-translate. (Maybe you >>> can do this with ngRoute, I don't know, never used it). I do know that in >>> ui-router it's really easy to set up the path segment that represents the >>> language as a parameter in the url matcher (e.g. '/mypath/:lang/mypage'. >>> From there, you have the chosen language available in your controller as a >>> value of the $params service, and can easily set the preferred language for >>> angular-translate to provide the correct text... >>> >>> >>>> On Friday, May 23, 2014 3:51:20 PM UTC-7, Mahmoud Abdel-Fattah wrote: >>>> Hey Adrian, it is almost one year but I could not find any resource online >>>> for the same question. So, may I ask how did you solve this issue? >>>> >>>>> On Friday, August 30, 2013 5:00:41 PM UTC+2, Adrian wrote: >>>>> Thanks! Will check it out >>>>> >>>>>> Den fredagen den 30:e augusti 2013 kl. 16:58:23 UTC+2 skrev Martin Alix: >>>>>> BTW, with Node, I use https://github.com/jeresig/i18n-node-2 to manage >>>>>> my translations... >>>>>> >>>>>>> On Friday, August 30, 2013 10:55:48 AM UTC-4, Adrian wrote: >>>>>>> Thank you everyone. Server side seems like a good way to go. Not the >>>>>>> least to be able to bootstrap angular with the language files already >>>>>>> loaded (as they are retrieved from a backend). >>>>>>> >>>>>>> Best >>>>>>> Adrian >>>>>>> >>>>>>> >>>>>>>> Den onsdagen den 28:e augusti 2013 kl. 09:07:03 UTC+2 skrev Adrian: >>>>>>>> Hello, >>>>>>>> >>>>>>>> I am trying to figure out how to setup the Angular routing for a multi >>>>>>>> language webpage/app. In this app different languages should be >>>>>>>> accessible with a language prefix such as /en /fr etc. >>>>>>>> >>>>>>>> Examples: >>>>>>>> www.myapp.com/en <--- welcome page in English >>>>>>>> www.myapp.com/fr <-- welcome page in French >>>>>>>> www.myapp.com <-- should redirect to the appropriate language (/en or >>>>>>>> /fr) according to some logic in a controller >>>>>>>> >>>>>>>> www.myapp.com/en/some-content <-- a sub page in English >>>>>>>> www.myapp.com/fr/some-content <-- the same subpage in French >>>>>>>> www.myapp.com/some-content <-- should redirect to the appropriate >>>>>>>> language (/en/some-content or /fr/some-content) according to some >>>>>>>> logic in a controller >>>>>>>> >>>>>>>> I guess I could do the routing this way >>>>>>>> >>>>>>>> $routeProvider. >>>>>>>> when('/', { >>>>>>>> controller: 'MyController', >>>>>>>> templateUrl: '/views/welcome.html' >>>>>>>> }). >>>>>>>> when('/en', { >>>>>>>> controller: 'MyController', >>>>>>>> templateUrl: '/views/welcome.html' >>>>>>>> }). >>>>>>>> when('/fr', { >>>>>>>> controller: 'MyController', >>>>>>>> templateUrl: '/views/welcome.html' >>>>>>>> }). >>>>>>>> when('/:language/some-content, { >>>>>>>> controller: 'MyController', >>>>>>>> templateUrl: '/views/some-content.html' >>>>>>>> }). >>>>>>>> when('/some-content', { >>>>>>>> controller: 'MyController', >>>>>>>> templateUrl: '/views/some-content.html' >>>>>>>> }). >>>>>>>> ... >>>>>>>> >>>>>>>> Where :language is extracted with $routeParams in MyController and >>>>>>>> used as parameter for some translation directive. But this routing >>>>>>>> doesn't feel right and gets very ugly when the number of languages and >>>>>>>> sub pages grow. How can I setup the routing in another better way? > > -- > You received this message because you are subscribed to the Google Groups > "AngularJS" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To post to this group, send email to [email protected]. > Visit this group at http://groups.google.com/group/angular. > For more options, visit https://groups.google.com/d/optout. -- You received this message because you are subscribed to the Google Groups "AngularJS" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/angular. For more options, visit https://groups.google.com/d/optout.
