2015-04-24 1 views
1

Я наткнулся на это:Как я могу использовать эту Реагировать библиотеку React-Rails

https://github.com/ssorallen/turbo-react

И мне нравится то, что он делает, я просто немного запутались о том, как я использую этот код в моем Rails проект, который в настоящее время использует React-Rails gem

Я в основном смущен о том, где положить код, чтобы я мог его прочитать в моем Rails gem с помощью React Rails. Если я вставляю основной файл JS в мою папку поставщика/активов, я получаю сообщение:

Uncaught ReferenceError: global is not defined 

Я знаю, что я просто в корне недопонимание, как включить этот вид JS файл в моем проекте Rails.

+0

Что конкретно смущает вас? –

+0

Мне интересно, где я помещаю файл js, чтобы правильно их использовать. Я не могу просто добавить их в активы поставщика, потому что они полагаются на глобальные переменные и требуют утверждений, которые не распознаются. – spitfire109

+0

Измените свой вопрос, чтобы объяснить свое замешательство. Там недостаточно, чтобы кто-то знал, как помочь. –

ответ

2

src/turbo-react.js предназначен для среды Node.js, а не среды браузера. Я вижу другой файл, public/dist/turbo-react.min.js, который был «скомпилирован» для запуска в браузере (с использованием Webpack). Вы должны скопировать этот файл в vendor/assets, а затем потребовать его в application.js.

Первые несколько строк src/turbo-react.js дал мне некоторые сигналы, которые он для Node.js:

if (global.Turbolinks === undefined) { 
    throw "Missing Turbolinks dependency. TurboReact requires Turbolinks be included before it."; 
} 

var HTMLtoJSX = require("htmltojsx"); 
var JSXTransformer = require("react-tools"); 
var React = require("react"); 

global и require являются оба понятия Node.js, которые не существуют в браузере.

1

Вы ищете для этого я думаю: https://github.com/ssorallen/turbo_react-rails

Инструкция по установке:

  1. Добавить эту строку в Gemfile вашего приложения:

    gem 'turbo_react-rails'

  2. Установить обновленные драгоценные камни

    $ bundle install

  3. Требовать турбо реагируют на JavaScript файл как "application.js" после Turbolinks:

    //= turbolinks //= require turbo-react

Вот и все. Теперь, если вы нажмете любую ссылку в своем веб-приложении, ее нужно загрузить через Ajax и использовать React для замены тегов на вашей странице.

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

  • Нет связанных вопросов^_^