2

私はレール4.2.6からレール5.1にアップグレードしてから、webpackを使い始めました。
webpackを使用するための設定はすべて完了していますが、ActiveAdminページでjavascriptファイルを読み込む方法がわかりません。
ActiveAdminはデフォルトでapp/assets/javascripts/active_admin.js.coffeeを読み込みます。
ActiveAdminページのwebpackにバンドルされているjavascriptファイルをロードする方法はありますか?ActiveAdminはwebpackでjavascriptをバンドルできますか? - Rails 5.1

答えて

1

Webpackはまだ正式にサポートされていません。私たちが現在使っているアプローチは、Webpackの生成された出力を読み込むためのタグをインクルードするActiveAdmin :: Views :: Headerパッチです。我々の場合には

class ActiveAdmin::Views::Header < Component 
    def build(namespace, menu) 
    ... 
    render "application/custom_header_tags" 
    end 
end 

当社custom_header_tags.erbはあなたが好むものは何でも統合React On Railsが、代替品を使用しています。

+0

どのように修正したのでしょうか? –

4

私は少し遅れますが、クラスを完全にオーバーライドするのではなく、メソッドをラップするほうがよいと思います。また、サルのパッチをHeaderにすると、divにid="header"というタグがレンダリングされます。 <head />でそれらをレンダリングするために、私は次のようでした:

ActiveAdmin::Views::Pages::Base.class_eval do 
    alias_method :original_build_active_admin_head, :build_active_admin_head 

    def build_active_admin_head(*args, &block) 
    original_build_active_admin_head(*args, &block) 
    within @head do render '/custom_headers' end 
    end 
end 

(それは無限ループが生じ開発モードで毎回再ロードされないように)config/initializersにフォルダをこのファイルを入れて、とapp/views/_custom_headers.html.erbファイルを作成しますあなたに必要なものは何でも。

関連する問題