class Vue::Generators::InstallGenerator
Public Instance Methods
add_initializer()
click to toggle source
# File lib/generators/vue/install_generator.rb, line 9 def add_initializer javascript_packs_dir = ::Webpacker.config.source_entry_path javascript_dir = javascript_packs_dir.parent template "vue_ujs/vue_ujs.js", "#{javascript_dir}/rails_vue_ujs.js" create_file "#{javascript_packs_dir}/vue_server_render.js" setup_js = <<-JS import RailsVueUJS from '../rails_vue_ujs'; var componentRequireContext = require.context("vue_components", true); RailsVueUJS.initialComponentsContext(componentRequireContext); self.RailsVueUJS = RailsVueUJS; JS append_file "#{javascript_packs_dir}/vue_server_render.js", setup_js append_file "#{javascript_packs_dir}/application.js", setup_js empty_directory "#{javascript_dir}/vue_components" remove_file "#{javascript_dir}/app.vue" remove_file "#{javascript_packs_dir}/hello_vue.js" template "vue_ujs/hello.vue", "#{javascript_dir}/vue_components/hello.vue" template "vue_ujs/environment_with_ssr.js", "#{Rails.root}/config/webpack/environment_with_ssr.js" `yarn add vue-server-renderer null-loader` end