-1

我正在尝试用 ruby​​ on rails 编写一个应用程序,使用flux,和react-rails,和几乎基于本教程这个 repo进行服务器端渲染。到目前为止,我已经设法编写了一个简单的两级路由配置,并且它似乎工作正常,因为正在呈现正确的处理程序。问题是根处理程序(我的应用程序组件)除了根 url ( ) 之外的所有 url 都被忽略了。IE:react-router-railsbrowserify/

routes.js.jsx的是这样的:

// app/assets/javascripts/routes.js.jsx
var Route        = ReactRouter.Route,
    DefaultRoute = ReactRouter.DefaultRoute;
var MyApp        = require('./components/MyApp');
var Login        = require('./components/session/Login');
var Scrapping    = require('./components/scrapping/Scrapping');

var Router = (
  <Route name="app" path="/" handler={MyApp}>
    <DefaultRoute handler={Login} />
    <Route name="login" path="login" handler={Login}/>
    <Route name="scrapping" path="scrapping" handler={Scrapping}/>
       .
       .
       .
  </Route>
);

module.exports = Router;

每当我去的时候/App --> Login都会被渲染。但是如果我去/loginor /scrapping,只有LoginorScrapping被分别渲染。

知道为什么会发生这种情况吗?我应该去哪里看?这是回购 谢谢你的帮助!

4

1 回答 1

0

问题在于,唯一被渲染的组件是由服务器端生成的组件react-router-rails,但应用程序没有在客户端上引导。为了解决它,我包含了一个文件来引导对客户端的反应。您可以在发布分支上检查我的 repo(链接上的链接)的工作设置。查找名为 app/assets/javascripts/app.js 或类似名称的文件。对不起,我不能更具体,但我正在旅行,我用我的智能手机回答。我希望它有所帮助。

于 2016-02-26T14:38:08.463 回答