module VueRails::ViewHelper
Public Instance Methods
vue_component(component_name, data={}, options={})
click to toggle source
# File lib/vue_rails/view_helper.rb, line 3 def vue_component(component_name, data={}, options={}) data[:csrf_token] = form_authenticity_token options.merge!(name: component_name, __is_vue_component__: true) prerender = options.delete(:prerender) state = (options.delete(:state) || {}).to_json router_push_to = prerender && prerender.is_a?(String) ? prerender : nil content = prerender ? VueRails::Renderer.server_render(component_name, data.to_json, router_push_to, state)&.html_safe : nil content_tag(:div, content, options.merge(data: {vue_data: data.to_json, vue_state: state})) end