如何从lang
设置setEN
并从about
读取?
在网站上选择语言是否很好?也许emberjs为此提供了一些其他方法?
我希望更改router.get('applicationController').connectOutlet('about');
以加载connectOutlet('about-' + lang )
。这样,我将根据用户选择的语言加载about-pl
或about-en
。
这种情况强制在更改语言后重新加载页面。我怎样才能做到这一点?因为当用户处于“#/ about”并选择新语言页面时,应重新加载以加载about-language
。
App.Router = Em.Router.extend({
enableLogging: true,
location: 'hash',
lang: 'pl',
root: Em.Route.extend({
// EVENTS
setPL: function () {
this.set('lang', 'pl');
},
setEN: function () {
this.set('lang', 'en');
},
gotoAbout: Ember.Route.transitionTo('about'),
gotoProjects: Ember.Route.transitionTo('projects'),
gotoTechnology: Ember.Route.transitionTo('technology'),
gotoContact: Ember.Route.transitionTo('contact'),
index: Em.Route.extend({
route: '/',
connectOutlets: function (router, context) {
router.get('applicationController').connectOutlet('navbar', 'navbar');
},
// STATES
about: Em.Route.extend({
route: '/',
connectOutlets: function (router, context) {
console.log( router.get('lang') );
router.get('applicationController').connectOutlet('about');
}
}),
另一方面,我可以使用语言作为路径的一部分,例如:#/en/about
。
但是如何将#/about
更改为#/en/about
,#/contact
更改为#/en/contact
以及其他方式存在问题。并且路径更复杂#/projects/12