Class: Vue::Generators::VueRouterGenerator

Inherits:
Rails::Generators::NamedBase
  • Object
show all
Includes:
Rails::Generators::ResourceHelpers
Defined in:
lib/generators/vue/vue_router_generator.rb

Instance Method Summary collapse

Instance Method Details

#import_page_for_routerObject



13
14
15
16
17
18
19
20
21
22
23
# File 'lib/generators/vue/vue_router_generator.rb', line 13

def import_page_for_router
  sentinel = /const routes\s*=\s*\[\s*/m
  content = %Q{{
          path: '/#{controller_file_path}',
          name: '#{ class_name }',
          component: () =>
          import(/* webpackChunkName: "about" */ '../views/#{ controller_file_path }/index.vue') 
      },}
  log :import_router_page, controller_file_path
  inject_into_file "app/javascript/packs/router/index.js", content, after: sentinel, verbose: false, force: false
end

#rails_routeObject



25
26
27
28
29
30
# File 'lib/generators/vue/vue_router_generator.rb', line 25

def rails_route
  sentinel = /scope '\/api'\s* do\n*/m
  content = "     resources :#{controller_file_path}\n"
  log :route, content
  inject_into_file "config/routes.rb", content, after: sentinel, verbose: false, force: false
end

#the_api_initObject



7
8
9
10
11
# File 'lib/generators/vue/vue_router_generator.rb', line 7

def the_api_init
  unless File.exist?(Rails.root.join("app/javascript/packs/router", "index.js"))
      template "router.js", "app/javascript/packs/router/index.js"
  end 
end