我使用最新的 ember.js (0.9.8.1) 通过引用Ember Router not updates url in Chrome and Safari实现了以下内容。当我尝试通过 router.transitionTo('route path') 方法(附加代码段的最后 3 行)切换黑白路由时,浏览器 url 未正确更新,但我确实看到视图标记正在更新,确认状态更改确实发生。可以帮助确定我是否在这里遗漏了什么吗?
顺便说一句:我在 Chrome 20.0.1132.27 beta-m 中对此进行了测试
App = Ember.Application.create({});
App.IndexView = Ember.View.extend({
template: Ember.Handlebars.compile(
'hello world from index'
)
});
App.ShowView = Ember.View.extend({
template: Ember.Handlebars.compile(
'hello world from show'
)
});
App.Router = Ember.Router.extend({
location: 'hash',
enableLogging: true,
root: Ember.State.extend({
index: Ember.State.extend({
route: '/',
redirectsTo: 'tasks'
}),
tasks: Ember.State.extend({
route: '/tasks',
index: Ember.ViewState.extend({
route: '/',
view: App.IndexView
}),
show: Ember.ViewState.extend({
route: '/show',
view: App.ShowView
})
})
})
});
var router = App.Router.create({});
App.initialize(router);
router.transitionTo('root');
router.transitionTo('root.tasks');
router.transitionTo('root.tasks.show');