reactjs - React with Rails 5.1 Calling Database Objects into React Components -
how call rails 5.1 database object react component?
for example, in standard rails view, can call object using @object assuming have access configured in controller.
with rails 5.1, using webpacker enabled react functionality, how call rails database object react component?
i want map through @objects in database in react component.
with react-rails gem, can use access objects in jsx file:
<%= react_component('component', props: @objects) %>
how do similar without using gem , using base rails 5.1/webpacker react setup?
my understanding uses ruby tag this:
<%= javascript_pack_tag "component" %>
in view template want render react component:
<%= javascript_pack_tag 'component' %> <%= content_tag :div, id: 'objects_data', data: @objects.to_json %> <% end %>
this renders html tag
<div id="objects_data" data="[{"id": 1, "created_at": .....}]"></div>
then in js file
document.addeventlistener('domcontentloaded', () => { var objectsdatatag = document.getelementbyid('objects_data') const objectsdata = json.parse(objectsdatatag.getattribute('data')) })
now have json data stored in objectsdata
constant.
my understanding how <%= react_component('component', props: @objects) %>
works well.
this covered in bit more detail in webpacker
docs , in this blog post
Comments
Post a Comment