Class: ReactOnRails::RenderingStrategy::ExecJsStrategy

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

Overview

ExecJS-based rendering strategy for the open-source React on Rails gem. Wraps the existing RubyEmbeddedJavaScript connection pool.

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/rendering_strategy/exec_js_strategy.rb', line 13

def execute(render_request)
  js_code = render_request.to_js
  ReactOnRails::ServerRenderingPool::RubyEmbeddedJavaScript
    .exec_server_render_js(js_code, render_request.render_options)
end

#resetObject



19
20
21
# File 'lib/react_on_rails/rendering_strategy/exec_js_strategy.rb', line 19

def reset
  ReactOnRails::ServerRenderingPool::RubyEmbeddedJavaScript.reset_pool
end

#reset_if_bundle_changedObject



23
24
25
26
# File 'lib/react_on_rails/rendering_strategy/exec_js_strategy.rb', line 23

def reset_if_bundle_changed
  ReactOnRails::ServerRenderingPool::RubyEmbeddedJavaScript
    .reset_pool_if_server_bundle_was_modified
end