Я хочу создать проект Rails 5 без использования фреймворка, такого как React. Но я хочу использовать jQuery и Yarn с jQuery для управления своими зависимостями.
Документация Webpacker иллюстрирует использование с такой инфраструктурой, как React:
rails new myapp --webpack=react
app/javascript:
├── packs:
│
│ └── application.js
└── src:
│ └── application.css
└── images:
└── logo.svg
<%= javascript_pack_tag 'application' %>
./bin/webpack and ./bin/webpack-dev-server
Я нашел документацию, иллюстрирующую, как использовать ее с jQuery и rails-ujs. Но он использует и Webpacker, и конвейер активов, что для меня не имеет смысла:
yarn add jquery
rails yarn:install
gem 'jquery-rails'
//= require jquery
//= require jquery_ujs
//= require turbolinks
//= require_tree .
rails webpacker:install
'yarn add' добавит jQuery в глобальный кеш Yarn:
$ yarn cache list | grep jquery
jquery 3.4.0 npm https://registry.yarnpkg.com/jquery/-/jquery-3.4.0.tgz#8de513fa0fa4b2c7d2e48a530e26f0596936efdf
Так зачем нам снова устанавливать jQuery через Rails? Это крайнее дублирование кода здесь. Смысл использования Yarn состоял в том, чтобы избегать управления драгоценными камнями через Ruby напрямую.