-1

Я пытаюсь написать приложение в рубин на рельсах с серверной стороны рендеринга с использованием flux, react-rails, react-router-rails и browserify, в значительной степени основаны на this tutorial и this repo. До сих пор мне удалось написать простую двухуровневую конфигурацию маршрутизации, и, похоже, она работает нормально, поскольку обрабатывается надлежащий обработчик. Дело в том, что корневой обработчик (мой компонент приложения) игнорируется для всех URL-адресов, кроме корневого URL-адреса (/). т.е .:реагировать-маршрутизатор-рельсы на стороне сервера делает правильный компонент, но обходит родительский компонент

Мои 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 визуализируется. Но если я перехожу на /login или /scrapping, то отображаются только Login или Scrapping соответственно.

Любая идея, почему это может произойти? где я должен смотреть? here's the repo Спасибо за помощь!

+0

Вы решили решить эту проблему? У меня тоже проблема. Какую версию реактивного маршрутизатора вы используете? –

ответ

0

Проблема заключалась в том, что единственным визуализируемым компонентом был тот, который был сгенерирован сервером, но приложение не было загружено на клиентах. Чтобы решить эту проблему, я включил файл для загрузки, чтобы реагировать на клиентов. Вы можете проверить рабочую настройку un my repo (ссылка на cuestión) в ветви релиза. Найдите файл под названием app/assets/javascripts/app.js или что-то в этом роде. Мне жаль, что я не могу быть более конкретным, но я путешествую и им отвечу со своего смартфона. Я надеюсь, что это помогает.

Смежные вопросы