React Router:没有 window.location 的过渡

React Router: Transition without window.location

我有一个使用 React Router 的应用程序。该应用程序通过调用 createPage 操作创建一个新项目,该操作调用我的 RefluxJS 存储并调用 API 端点。一旦 API 调用 returns 并成功,我将新的 page 对象传递给 pageCreated 操作。在我的 onChanged 中,甚至在 JSX 文件中,我想在不刷新页面的情况下转换到基于 page 的 属性 的路由,但我不知道该怎么做.

我想做类似于 window.location = /pages/1234 的事情,其中​​ 1234 来自 API.

返回的 page 对象

我试过 Router.transitionTo('/ua-manager/pages/' + options.alias);,但 returns 不是函数。如何在不使用 window.location 的情况下实现此转换?

#transitionTo 存在于 Router 对象实例上而不是 class 所以通过 this.context.router 访问它并且它会工作或者只是添加 Navigation mixin.

this.context.router.transitionTo('/ua-manager/pages' + options.alias);