komponent: How access the given block inside the helper
I’m looking for using the given block to my component inside the helper. But I didn’t found how to retrieve the block.
I used block_given_to_component? and that’s works, but if I use @block_given_to_component.call but it returns me the content of my parent component.
Is it a missing feature? Or a mistake of usage?
I do some test by extended the ComponentHelper module like following:
module ComponentHelper
def yield_or_property(property_name)
if block_given_to_component?
block_given_to_component
elsif properties.key? property_name
properties[property_name]
else
raise ArgumentError, "Missing required block component or parameter: #{property_name}"
end
end
def property_or_yield(property_name)
if properties.key? property_name
properties[property_name]
elsif block_given_to_component?
block_given_to_component
else
raise ArgumentError, "Missing required block component or parameter: #{property_name}"
end
end
private
def block_given_to_component
@_block_given_to_component = @block_given_to_component.yield if block_given_to_component?
end
end
And by using this method yield_or_property(:text) into the components views.
But it returns me a LocalJumpError.
About this issue
- Original URL
- State: closed
- Created 6 years ago
- Comments: 17 (17 by maintainers)
Thanks @florentferry!
Looks like it works fine now!