我的应用程序使用了 ember-i18n 插件。出于 SEO 的目的,我想在 URL 中添加 /[lang-code]/。
更改语言时,history.pushState 可以更改 URL 并且可以,但是页面上的链接不会更改为新语言,即使 router.rootURL 更改。
到目前为止,我只能更改 window.location.pathname,但正在发出新的网络请求。
我尝试覆盖 href-to 助手(来自 ember-href-to 插件)并添加了这个:
_recomputeOnLocaleChange: Ember.observer('i18n.locale', function() {
console.log("here?");
this.recompute();
})
它在语言环境更改时执行,但显然重新计算什么都不做。即使使用 setTimeout (因为也许 rootURL 还没有改变)。链接都是一样的。
你有什么建议吗?将不胜感激!谢谢!!