marty.js ApplicationContainer 和 Rect Router 1.0.0 beta

marty.js ApplicationContainer and Rect Router 1.0.0 beta

我正在尝试使用 Marty v0.10 和 React Router v1.0.0。 React Router 提供的示例似乎不允许在应用程序容器中包装处理程序。 React Router 说使用 React.render 而不是 Router.runRouter.run 的唯一示例是在服务器端。

我在 marty.js v0.10 和 React Router v0.13 中的实现抛出以下错误:

Invariant Violation: Router.run needs a callback

这是因为 Router.run 现在需要 3 个参数。我不确定浏览器中的第二个参数应该是什么。

获取此信息的任何提示:

Router.run(routes, (Handler, state) => {
  React.render(
    <ApplicationContainer app={ application }>
      <Handler { ...state.params } />
    </ApplicationContainer>,
    document.body
  );
});

要使用 Rect Router 1.0.0 beta 吗?

显而易见的问题是显而易见的。

直接把渲染逻辑丢进React.render.

React.render(
  <ApplicationContainer app={ application }>
    { routes }
  </ApplicationContainer>
  , document.body
);