70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
|
# File 'lib/react/component/api.rb', line 70
def get_react_element(arg, &block)
if block_given?
%x{
let last_buffer_length = Opal.React.render_buffer[Opal.React.render_buffer.length - 1].length;
let last_buffer_element = Opal.React.render_buffer[Opal.React.render_buffer.length - 1][last_buffer_length - 1];
block.$call();
// console.log("get_react_element popping", Opal.React.render_buffer, Opal.React.render_buffer.toString())
let new_element = Opal.React.render_buffer[Opal.React.render_buffer.length - 1].pop();
if (last_buffer_element === new_element) { #{raise "Block did not create any React element!"} }
return new_element;
}
else
`Opal.React.render_buffer[Opal.React.render_buffer.length - 1].pop()`
end
end
|