older gem as possible solution
This commit is contained in:
parent
9f450bfad2
commit
d7ac6b04e1
10 changed files with 0 additions and 139 deletions
2
Gemfile
2
Gemfile
|
|
@ -64,5 +64,3 @@ end
|
||||||
|
|
||||||
# Windows does not include zoneinfo files, so bundle the tzinfo-data gem
|
# Windows does not include zoneinfo files, so bundle the tzinfo-data gem
|
||||||
gem 'tzinfo-data', platforms: [:mingw, :mswin, :x64_mingw, :jruby]
|
gem 'tzinfo-data', platforms: [:mingw, :mswin, :x64_mingw, :jruby]
|
||||||
|
|
||||||
gem 'mini_racer', platforms: :ruby
|
|
||||||
|
|
@ -1,7 +0,0 @@
|
||||||
# You can run these commands in separate shells
|
|
||||||
web: rails s -p 3000
|
|
||||||
|
|
||||||
# Next line runs a watch process with webpack to compile the changed files.
|
|
||||||
# When making frequent changes to client side assets, you will prefer building webpack assets
|
|
||||||
# upon saving rather than when you refresh your browser page.
|
|
||||||
client: sh -c 'rm -rf public/packs/* || true && bundle exec rake react_on_rails:locale && bin/webpack -w'
|
|
||||||
|
|
@ -1,12 +0,0 @@
|
||||||
# You can run these commands in separate shells instead of using foreman
|
|
||||||
web: rails s -p 3000
|
|
||||||
|
|
||||||
# Next line runs the webpack-dev-server
|
|
||||||
# You can edit config/webpacker.yml to set HMR to true to see hot reloading.
|
|
||||||
# Note, hot and live reloading don't work with the default generator setup on top of
|
|
||||||
# the rails/webpacker Webpack config with server rendering.
|
|
||||||
# If you have server rendering enabled, modify the call to bin/webpack-dev-server line
|
|
||||||
# so you add `--inline=false` and then CSS is not inlined.
|
|
||||||
# Otherwise, you will have an error. If you want HMR and Server Rendering, see
|
|
||||||
# the example in the https://github.com/shakacode/react-webpack-rails-tutorial
|
|
||||||
client: sh -c 'rm -rf public/packs/* || true && bundle exec rake react_on_rails:locale && bin/webpack-dev-server'
|
|
||||||
|
|
@ -1,9 +0,0 @@
|
||||||
# frozen_string_literal: true
|
|
||||||
|
|
||||||
class HelloWorldController < ApplicationController
|
|
||||||
layout "hello_world"
|
|
||||||
|
|
||||||
def index
|
|
||||||
@hello_world_props = { name: "Stranger" }
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
@ -1,45 +0,0 @@
|
||||||
import PropTypes from 'prop-types';
|
|
||||||
import React from 'react';
|
|
||||||
|
|
||||||
export default class HelloWorld extends React.Component {
|
|
||||||
static propTypes = {
|
|
||||||
name: PropTypes.string.isRequired, // this is passed from the Rails view
|
|
||||||
};
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @param props - Comes from your rails view.
|
|
||||||
*/
|
|
||||||
constructor(props) {
|
|
||||||
super(props);
|
|
||||||
|
|
||||||
// How to set initial state in ES6 class syntax
|
|
||||||
// https://reactjs.org/docs/state-and-lifecycle.html#adding-local-state-to-a-class
|
|
||||||
this.state = { name: this.props.name };
|
|
||||||
}
|
|
||||||
|
|
||||||
updateName = (name) => {
|
|
||||||
this.setState({ name });
|
|
||||||
};
|
|
||||||
|
|
||||||
render() {
|
|
||||||
return (
|
|
||||||
<div>
|
|
||||||
<h3>
|
|
||||||
Hello, {this.state.name}!
|
|
||||||
</h3>
|
|
||||||
<hr />
|
|
||||||
<form >
|
|
||||||
<label htmlFor="name">
|
|
||||||
Say hello to:
|
|
||||||
</label>
|
|
||||||
<input
|
|
||||||
id="name"
|
|
||||||
type="text"
|
|
||||||
value={this.state.name}
|
|
||||||
onChange={(e) => this.updateName(e.target.value)}
|
|
||||||
/>
|
|
||||||
</form>
|
|
||||||
</div>
|
|
||||||
);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -1,8 +0,0 @@
|
||||||
import ReactOnRails from 'react-on-rails';
|
|
||||||
|
|
||||||
import HelloWorld from '../bundles/HelloWorld/components/HelloWorld';
|
|
||||||
|
|
||||||
// This is how react_on_rails can see the HelloWorld in the browser.
|
|
||||||
ReactOnRails.register({
|
|
||||||
HelloWorld,
|
|
||||||
});
|
|
||||||
|
|
@ -1,2 +0,0 @@
|
||||||
<h1>Hello World</h1>
|
|
||||||
<%= react_component("HelloWorld", props: @hello_world_props, prerender: false) %>
|
|
||||||
|
|
@ -1,12 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<title>ReactOnRailsWithWebpacker</title>
|
|
||||||
<%= csrf_meta_tags %>
|
|
||||||
<%= javascript_pack_tag 'hello-world-bundle' %>
|
|
||||||
</head>
|
|
||||||
|
|
||||||
<body>
|
|
||||||
<%= yield %>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
|
|
@ -1,41 +0,0 @@
|
||||||
# frozen_string_literal: true
|
|
||||||
|
|
||||||
# See docs/basics/configuration.md for many more options
|
|
||||||
|
|
||||||
ReactOnRails.configure do |config|
|
|
||||||
# This configures the script to run to build the production assets by webpack. Set this to nil
|
|
||||||
# if you don't want react_on_rails building this file for you.
|
|
||||||
config.build_production_command = "RAILS_ENV=production NODE_ENV=production bin/webpack"
|
|
||||||
|
|
||||||
################################################################################
|
|
||||||
################################################################################
|
|
||||||
# TEST CONFIGURATION OPTIONS
|
|
||||||
# Below options are used with the use of this test helper:
|
|
||||||
# ReactOnRails::TestHelper.configure_rspec_to_compile_assets(config)
|
|
||||||
################################################################################
|
|
||||||
|
|
||||||
# If you are using this in your spec_helper.rb (or rails_helper.rb):
|
|
||||||
#
|
|
||||||
# ReactOnRails::TestHelper.configure_rspec_to_compile_assets(config)
|
|
||||||
#
|
|
||||||
# with rspec then this controls what yarn command is run
|
|
||||||
# to automatically refresh your webpack assets on every test run.
|
|
||||||
#
|
|
||||||
config.build_test_command = "RAILS_ENV=test bin/webpack"
|
|
||||||
|
|
||||||
################################################################################
|
|
||||||
################################################################################
|
|
||||||
# SERVER RENDERING OPTIONS
|
|
||||||
################################################################################
|
|
||||||
# This is the file used for server rendering of React when using `(prerender: true)`
|
|
||||||
# If you are never using server rendering, you should set this to "".
|
|
||||||
# Note, there is only one server bundle, unlike JavaScript where you want to minimize the size
|
|
||||||
# of the JS sent to the client. For the server rendering, React on Rails creates a pool of
|
|
||||||
# JavaScript execution instances which should handle any component requested.
|
|
||||||
#
|
|
||||||
# While you may configure this to be the same as your client bundle file, this file is typically
|
|
||||||
# different. You should have ONE server bundle which can create all of your server rendered
|
|
||||||
# React components.
|
|
||||||
#
|
|
||||||
config.server_bundle_js_file = "hello-world-bundle.js"
|
|
||||||
end
|
|
||||||
|
|
@ -1,4 +1,3 @@
|
||||||
Rails.application.routes.draw do
|
Rails.application.routes.draw do
|
||||||
get 'hello_world', to: 'hello_world#index'
|
|
||||||
# For details on the DSL available within this file, see http://guides.rubyonrails.org/routing.html
|
# For details on the DSL available within this file, see http://guides.rubyonrails.org/routing.html
|
||||||
end
|
end
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue