2016-04-13 3 views
2

Я пытаюсь использовать Ace editor в моем приложении Ruby on Rails, причем большинство представлений составлено как компоненты React. Я использую react-rails gem, и я вообще не использую флюс.Как использовать пакеты npm в рельсах

Я нашел этот пакет react-ace, но я должен использовать npm для его установки. Я смог получить компоненты ламели, работающие с драгоценными камнями, но никогда не получал пакеты npm для работы. Есть ли способ использовать это только через конвейер активов (через поставщика)?

Кстати, я не пользуюсь браузером или ES6, поэтому у меня даже нет import. До сих пор я делал все через конвейер активов.

Спасибо!

+0

Вы можете взглянуть на жемчужину браузера-рельса – VonD

ответ

2

Короткий ответ заключается в том, что редактор ACE был создан для запуска в Node.js not Rails, поэтому нет простого способа сделать это. Помните, что большинство пакетов npm предназначены для использования в качестве серверного javascript с запуском в среде Node.js и не будут выполняться непосредственно в Ruby. Я считаю, что в Ace Editor требуется база данных Node.js, и я сомневаюсь, что было бы тривиально, если бы она работала в бэкэнде Rails.

Конечно, любой javascript, который запускается в браузере, может быть интегрирован в конвейер Rails. С этой целью я рекомендую проверить Bower, которая является наиболее часто используемой системой управления пакетами (http://bower.io). Вы можете установить прямо в приложение Rails, хотя я бы рекомендовал проверить рельсы Bower для лучшей интеграции с соглашениями Rails и конвейером активов https://github.com/rharriso/bower-rails.

Если вы хотите попробовать портировать платформу-agnostic javascript в браузере, вы можете проверить браузер, который просто связывает файлы javascript с использованием формата CommonJS require, который использует Node.js. Тем не менее, не будет волшебным образом создавать серверные структуры javascript, такие как Express или редактор ACE, исключительно в браузере.

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