2012-08-06 86 views
0

我是Ember的新手,但我非常喜欢它。目前,我遇到了Router。但是,我想我真的不明白。这是我使用的代码(取自Emberjs的网站):Emberjs:路由器问题

App.Router = Ember.Router.extend({ 
     root: Ember.State.extend({ 
     index: Ember.State.extend({ 
      route: '/', 
      redirectsTo: 'posts' 
     }), 
     posts: Ember.State.extend({ 
      route: '/posts' 
     }), 
     post: Ember.State.extend({ 
      route: '/posts/:post_id' 
     }) 
     }) 
    }); 

但是,这段代码对我没有帮助。当我点击index时,是不是应该将地址更改为/posts?难道我做错了什么?谢谢:)

+0

看看http://stackoverflow.com/questions/11165315/ember-js-routing-how-do-you-set-a-default-route-to-render-immediately,你可以找到一个工作路由器重定向到接受答案中的示例。 – inancsevinc 2012-08-06 13:39:24

回答

1

使用Ember.Route而不是Ember.State,因为特定于路由的代码与Ember.StateManager/Ember.State分开。

+0

好的,我将状态更改为路由。它什么也没做。当我进入索引页面时,它不应该将url更改为'/ posts'吗? – Andrew 2012-08-06 13:48:02

+0

你有ApplicationController/View吗?你打电话给App.initialize()吗? – zaplitny 2012-08-06 14:28:54