【问题标题】:Lookup route for URL in Ember?在 Ember 中查找 URL 的路由?
【发布时间】:2016-12-06 15:48:01
【问题描述】:

Ember 是否公开了一个 API,我可以使用它从 URL 中手动查找路由(作为点分隔路径)?

例如:

Ember.routeForURL('/foo/bar')

【问题讨论】:

    标签: ember.js ember-router


    【解决方案1】:

    据我所知,没有公开的 API。你可以做的是使用路由器的识别器。

    let owner = Ember.getOwner(this);
    let router = owner.lookup('router:main');
    let handlers = router.router.recognizer.recognize('/foo/bar')
    

    "handlers" 将包含一个对象数组,其中 handler 属性类似于 ["application", "foo", "foo.bar"]

    然后你可能可以使用最后一个处理程序来做

    owner.lookup('route:' + lastHandler)
    

    【讨论】:

    • 在较新的 ember 版本中,您应该使用:router._routerMicrolib.recognizer.recognize('/foo/bar')
    猜你喜欢
    • 2013-09-06
    • 1970-01-01
    • 1970-01-01
    • 2020-09-03
    • 2013-12-14
    • 2019-10-03
    • 1970-01-01
    • 2013-07-23
    • 1970-01-01
    相关资源
    最近更新 更多