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

Я наткнулся на это:

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

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

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

Uncaught ReferenceError: global is not defined

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


person spitfire109    schedule 24.04.2015    source источник
comment
Что конкретно вас смущает?   -  person Wayne Conrad    schedule 25.04.2015
comment
Мне интересно, куда я поместил файл js, чтобы правильно их использовать. Я не могу просто добавить их в активы поставщиков, потому что они полагаются на глобальные переменные и требуют операторов, которые не распознаются.   -  person spitfire109    schedule 26.04.2015
comment
Пожалуйста, отредактируйте свой вопрос, чтобы объяснить ваше замешательство. Там недостаточно, чтобы кто-то знал, как помочь.   -  person Wayne Conrad    schedule 26.04.2015
comment
Извините, уточнил.   -  person spitfire109    schedule 27.04.2015


Ответы (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, которых нет в браузере.

person rmosolgo    schedule 24.05.2015

Я думаю, вы ищете это: 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 для замены тегов на вашей странице.

person Ich    schedule 05.06.2015