opal/virtual_dom_extension.rb in inesita-0.0.4 vs opal/virtual_dom_extension.rb in inesita-0.0.5

- old
+ new

@@ -1,7 +1,16 @@ module VirtualDOM class NodeFactory def component(comp) @nodes << NodeFactory.new(comp.method(:render), comp).nodes.first end + + def a(params, &block) + params = { onclick: -> { Inesita::Router.handle_link(params[:href]) } }.merge(params) if params[:href] + @nodes << VirtualNode.new( + 'a', + process_params(params), + block ? NodeFactory.new(block, @parent).nodes : [] + ).vnode + end end end