Class: Rolemodel::ReactGenerator

Inherits:
GeneratorBase
  • Object
show all
Defined in:
lib/generators/rolemodel/react/react_generator.rb

Instance Method Summary collapse

Instance Method Details

#add_filesObject



13
14
15
16
17
18
19
20
21
22
# File 'lib/generators/rolemodel/react/react_generator.rb', line 13

def add_files
  if @add_react
    say 'Copying files'

    template 'app/helpers/react_helper.rb', 'app/helpers/react_helper.rb'

    template 'app/javascript/components/HelloReact.jsx', 'app/javascript/components/HelloReact.jsx'
    template 'app/javascript/controllers/react_controller.js', 'app/javascript/controllers/react_controller.js'
  end
end

#add_npm_packagesObject



5
6
7
8
9
10
11
# File 'lib/generators/rolemodel/react/react_generator.rb', line 5

def add_npm_packages
  @add_react = yes?('Would you like to add react?')

  if @add_react
    run 'yarn add react react-dom'
  end
end

#import_react_controllerObject



24
25
26
27
28
29
30
31
32
33
34
# File 'lib/generators/rolemodel/react/react_generator.rb', line 24

def import_react_controller
  if @add_react
    say 'Importing react_controller.js'

    append_to_file 'app/javascript/controllers/index.js', <<~JS

      import ReactController from './react_controller.js'
      application.register('react', ReactController)
    JS
  end
end