Class: ReactOnRailsPro::RenderingStrategy::NodeStrategy

Inherits:
Object
  • Object
show all
Includes:
ReactOnRails::RenderingStrategy
Defined in:
lib/react_on_rails_pro/rendering_strategy/node_strategy.rb

Overview

Pro rendering strategy wrapping ProRendering, which handles caching, streaming, and the ExecJS vs Node renderer dispatch.

Part of the strategy pattern refactoring (see issue #2905). Currently additive — not yet wired into the main rendering path.

Instance Method Summary collapse

Instance Method Details

#execute(render_request) ⇒ Object



13
14
15
16
17
# File 'lib/react_on_rails_pro/rendering_strategy/node_strategy.rb', line 13

def execute(render_request)
  js_code = render_request.to_js
  ReactOnRailsPro::ServerRenderingPool::ProRendering
    .exec_server_render_js(js_code, render_request.render_options)
end

#resetObject



19
20
21
# File 'lib/react_on_rails_pro/rendering_strategy/node_strategy.rb', line 19

def reset
  ReactOnRailsPro::ServerRenderingPool::ProRendering.reset_pool
end

#reset_if_bundle_changedObject



23
24
25
26
# File 'lib/react_on_rails_pro/rendering_strategy/node_strategy.rb', line 23

def reset_if_bundle_changed
  ReactOnRailsPro::ServerRenderingPool::ProRendering
    .reset_pool_if_server_bundle_was_modified
end