gpt4 book ai didi

ember.js - 在 Ember 中获取当前路线名称

转载 作者:行者123 更新时间:2023-12-03 22:46:19 26 4
gpt4 key购买 nike

我需要在我的 ember 应用程序中获取当前路线名称;我试过这个:
Ember App.Router.router.currentState undefined
但它对我不起作用(我可能遗漏了一些东西......)我使用 Ember rc6 并且我有一个多语言应用程序;在 applicationRoute 中,我检测浏览器的语言,然后重定向到正确的页面:
this.transitionTo(userLang);
但我希望仅当用户在主页上时才执行此操作,因此如下所示:

if (currentRoute == 'home'){
this.transitionTo(userLang)
}

最佳答案

这在 1.3.0-beta 上对我有用(快速浏览 1.1.2 的源代码表明它也可以在那里工作):

App.__container__.lookup('router:main').location.lastSetURL

请注意,文档指出:

At present, it relies on a hashchange event existing in the browser.



但是,我相信强烈建议 App.__container__不能在生产代码中使用。更可接受的替代方法是使用 App.Router.router.currentHandlerInfos ,提供有关当前 Ember 路线的信息。

另一种选择是 currentRouteNameApplicationController .您可以添加 needs: ['application']到您的 Controller ,然后使用 controllers.application.currentRouteName 访问路由名称.这将返回类似 posts.index 的内容.

关于ember.js - 在 Ember 中获取当前路线名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18302463/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com