class ComponentGenerator
Public Instance Methods
create_component_directory()
click to toggle source
# File lib/generators/component/component_generator.rb, line 17 def create_component_directory empty_directory("client/app/components/#{name}") end
create_component_index()
click to toggle source
# File lib/generators/component/component_generator.rb, line 21 def create_component_index create_file "client/app/components/#{name}/#{name}.js", "import React, { Component } from 'react'; class #{name} extends Component { render() { return ( <div>#{name} Component</div> ) } } export default #{name};" inject_into_file "client/app/registration.jsx", " #{name},\n", :before => /^}/ inject_into_file "client/app/registration.jsx", "import #{name} from './components/#{name}/#{name}';\n", :after => "import ReactOnRails from 'react-on-rails';\n" end
create_route()
click to toggle source
# File lib/generators/component/component_generator.rb, line 4 def create_route route "get '#{name}', to: '#{name}#index'" end
create_view()
click to toggle source
# File lib/generators/component/component_generator.rb, line 12 def create_view create_file "app/views/pages/components/#{name}/#{name}.html.erb", "<%= react_component('#{name}', {prerender: false}) %>" create_file "app/assets/stylesheets/#{name}.scss" end
create_view_directory()
click to toggle source
# File lib/generators/component/component_generator.rb, line 8 def create_view_directory empty_directory("app/views/pages/components/#{name}") end