@@ -18,25 +18,27 @@ class Railtie < ::Rails::Railtie
1818 config . react . server_renderer = nil # defaults to BundleRenderer
1919 config . react . server_renderer_options = { } # BundleRenderer provides defaults
2020 # Changing files with these extensions in these directories will cause the server renderer to reload:
21- config . react . server_renderer_directories = [ "/app/assets/javascripts/" ]
22- config . react . server_renderer_extensions = [ "jsx" ]
23- if defined? ( Webpacker )
24- config . react . server_renderer_directories << "app/javascript"
25- config . react . server_renderer_extensions << "js"
26- end
21+ config . react . server_renderer_directories = [ "/app/assets/javascripts/" , "app/javascript" ]
22+ config . react . server_renderer_extensions = [ "jsx" , "js" ]
2723 # View helper implementation:
2824 config . react . view_helper_implementation = nil # Defaults to ComponentMount
2925
3026 # Watch .jsx files for changes in dev, so we can reload the JS VMs with the new JS code.
3127 initializer "react_rails.add_watchable_files" , group : :all do |app |
28+ # Watch files ending in `server_renderer_extensions` in each of `server_renderer_directories`
3229 reload_paths = config . react . server_renderer_directories . reduce ( { } ) do |memo , dir |
3330 app_dir = File . join ( app . root , dir )
3431 memo [ app_dir ] = config . react . server_renderer_extensions
3532 memo
3633 end
3734
38- app . reloaders << ActiveSupport ::FileUpdateChecker . new ( [ ] , reload_paths ) do
39- React ::ServerRendering . reset_pool
35+ # Rails checks these objects for changes:
36+ app . reloaders << ActiveSupport ::FileUpdateChecker . new ( [ ] , reload_paths )
37+ # Reload renderers in dev when files change
38+ if Gem ::Version . new ( ::Rails ::VERSION ::STRING ) >= Gem ::Version . new ( "5.x" )
39+ ActiveSupport ::Reloader . to_prepare { React ::ServerRendering . reset_pool }
40+ else
41+ ActionDispatch ::Reloader . to_prepare { React ::ServerRendering . reset_pool }
4042 end
4143 end
4244
@@ -102,14 +104,7 @@ class Railtie < ::Rails::Railtie
102104 React ::ServerRendering . pool_timeout = app . config . react . server_renderer_timeout
103105 React ::ServerRendering . renderer_options = app . config . react . server_renderer_options
104106 React ::ServerRendering . renderer = app . config . react . server_renderer
105-
106107 React ::ServerRendering . reset_pool
107- # Reload renderers in dev when files change
108- if Gem ::Version . new ( ::Rails ::VERSION ::STRING ) >= Gem ::Version . new ( "5.x" )
109- ActiveSupport ::Reloader . to_prepare { React ::ServerRendering . reset_pool }
110- else
111- ActionDispatch ::Reloader . to_prepare { React ::ServerRendering . reset_pool }
112- end
113108 end
114109
115110 initializer "react_rails.setup_engine" , :group => :all do |app |
0 commit comments