Importmap Rails и Stimulus при работе с Rails Engines

1
8

Я не могу заставить stimulus и importmaps читать файлы из движка приложения. Текущий проект, который мне поручили сделать, включает в себя обновление всех устаревших движков для использования importmaps и stimulus JS. Документация немного вводит в заблуждение, поскольку она не работает так, как описано в документации для их использования.

Примечание :: Я не выбирал структуру приложения, я работаю с тем, что мне дали, и не мне решать, является ли текущая структура правильной или неправильной, поэтому, пожалуйста, считайте, что это мой единственный вариант для структуры.

Главное приложение (Rails ==> gem 'Engine 1', gem 'Engine 2'), только оно работает как вложенное приложение rails.
-- Движок 1
-- Движок 2
-- Движок 3

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

//= link_tree ../../images/appetite
//= link_directory ../../stylesheets/appetite .css
//= link_directory ../../stylesheets/appetite .scss
//= link_tree  ../../../javascript
pin_all_from "app/javascript/controllers", under: "controllers/myengine"
# engines/appetite/lib/appetite/engine.rb
module MyEngine
  class Engine < ::Rails::Engine
    isolate_namespace MyEngine
    initializer :importmap, before: :importmap do |app|
      app.config.importmap.paths << root.join('config/importmap.rb')
    end
  end
end
import { Controller } from "@hotwired/stimulus";

export default class extends Controller {
  connect() {
    console.log("Example controller connected");
  }
}
Анжела
Вопрос задан26 марта 2024 г.

1 Ответ

Ваш ответ

Загрузить файл.