【问题标题】:Setting the Ember root URL without redirection设置 Ember 根 URL 而不进行重定向
【发布时间】:2013-04-23 17:28:29
【问题描述】:

假设我的Router 看起来像这样:

Bananas.Router.map ->
  @resource "bananas", ->
    @route 'index', path: '/'

我的BananasIndexRoute 看起来像这样:

Bananas.BananasIndexRoute = Ember.Route.extend
  setupController: (controller) -> 
    controller.set("content", [ "baby", "manzano", "burro", "plantain", "red" ])

操纵香蕉属于BananaController,但是当用户访问waytomanybananas.com 时,我希望他们能够与我的应用程序进行交互。目前,我通过将用户重定向到香蕉路径来实现这一点,如下所示:

Bananas.IndexRoute = Ember.Route.extend
  redirect: -> @transitionTo("bananas")

但是,当我访问根 URL(Rails 中 root 的等效项)时,我希望应用程序呈现 bananas 路由。使用 Ember 完成此任务的最佳方法是什么?

【问题讨论】:

    标签: javascript ember.js coffeescript ember-router


    【解决方案1】:

    这样就可以了

    Bananas.Router.map ->
      @resource "bananas", path: '/'
    

    【讨论】:

    • 最初阅读本文时,我将@route 阅读为@resource。我认为@MilkyWayJoe 的答案是正确的方法,但无论如何谢谢。
    【解决方案2】:

    path 添加到您的资源中:

    Bananas.Router.map ->
        @resource 'bananas', { path: '/' }, ->
    

    【讨论】:

    • idk 你正在做什么或试图做什么。这应该工作
    • 我的 ember 服务以某种方式变脏或跟不上实际更改,尽管保存并重新启动服务器。它现在正在工作。