fix the sending logic
This commit is contained in:
parent
9080e458c4
commit
654b989e90
@ -13,3 +13,5 @@ gem "sqlite3"
|
||||
gem "active_hash"
|
||||
|
||||
gem "opal-rails"
|
||||
gem 'opal-optimizer', git: "https://github.com/hmdne/opal-optimizer" , require: false
|
||||
gem "terser"
|
||||
|
@ -1,3 +1,11 @@
|
||||
GIT
|
||||
remote: https://github.com/hmdne/opal-optimizer
|
||||
revision: d958b7f68bfcec7e4d28707b382138c9436db8be
|
||||
specs:
|
||||
opal-optimizer (0.1.7)
|
||||
opal (>= 1.0.0)
|
||||
rkelly-turbo
|
||||
|
||||
PATH
|
||||
remote: ..
|
||||
specs:
|
||||
@ -81,6 +89,7 @@ GEM
|
||||
crass (1.0.6)
|
||||
date (3.3.3)
|
||||
erubi (1.12.0)
|
||||
execjs (2.8.1)
|
||||
globalid (1.1.0)
|
||||
activesupport (>= 5.0)
|
||||
haml (6.1.1)
|
||||
@ -169,6 +178,7 @@ GEM
|
||||
thor (~> 1.0)
|
||||
zeitwerk (~> 2.5)
|
||||
rake (13.0.6)
|
||||
rkelly-turbo (0.1.1)
|
||||
sprockets (4.2.0)
|
||||
concurrent-ruby (~> 1.0)
|
||||
rack (>= 2.2.4, < 4)
|
||||
@ -178,6 +188,8 @@ GEM
|
||||
sprockets (>= 3.0.0)
|
||||
sqlite3 (1.6.0-x86_64-linux)
|
||||
temple (0.10.0)
|
||||
terser (1.1.13)
|
||||
execjs (>= 0.3.0, < 3)
|
||||
thor (1.2.1)
|
||||
tilt (2.0.11)
|
||||
timeout (0.3.1)
|
||||
@ -194,10 +206,12 @@ PLATFORMS
|
||||
DEPENDENCIES
|
||||
active_hash
|
||||
haml-rails
|
||||
opal-optimizer!
|
||||
opal-rails
|
||||
puma (= 5.6.5)
|
||||
rails
|
||||
sqlite3
|
||||
terser
|
||||
vue_r!
|
||||
|
||||
BUNDLED WITH
|
||||
|
@ -1,21 +1,29 @@
|
||||
#app
|
||||
#app.mt-40
|
||||
.flex.justify-center
|
||||
= #@image.attributes
|
||||
|
||||
.flex.justify-center
|
||||
%a.underline{ e_click: "bg_change" , r_class: 'back(50)'}
|
||||
.p-20
|
||||
{{ back }}
|
||||
%a.p-20.underline{ e_click: "bg_change(200)" , r_class: 'back'}
|
||||
{{ text1 }}
|
||||
%a.p-20.underline{ e_click: "bg_change(100)" , r_class: 'back'}
|
||||
{{ text2 }}
|
||||
:opal
|
||||
class Clicker < VueR::Application
|
||||
def bg_change
|
||||
self.state = !self.state
|
||||
def bg_change(num)
|
||||
self.state = num
|
||||
end
|
||||
def back(arg)
|
||||
puts "Arg:#{arg}:#{arg.class}"
|
||||
str = self.state ? "bg-cyan-50" : "bg-cyan-200"
|
||||
str + " " + arg.to_s
|
||||
def back
|
||||
'bg-cyan-' + self.state.to_s
|
||||
end
|
||||
def text1
|
||||
"click for dark"
|
||||
end
|
||||
def text2
|
||||
"click for light"
|
||||
end
|
||||
end
|
||||
|
||||
click = Clicker.new(bg: 'bg-cyan-200' , state: true)
|
||||
click = Clicker.new( state: 200)
|
||||
click.mount("#app")
|
||||
|
@ -1,16 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>Dummy</title>
|
||||
<meta name="viewport" content="width=device-width,initial-scale=1">
|
||||
<%= csrf_meta_tags %>
|
||||
<%= csp_meta_tag %>
|
||||
|
||||
<%= stylesheet_link_tag "application" %>
|
||||
<%= javascript_include_tag "application" %>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<%= yield %>
|
||||
</body>
|
||||
</html>
|
13
dummy/app/views/layouts/application.html.haml
Normal file
13
dummy/app/views/layouts/application.html.haml
Normal file
@ -0,0 +1,13 @@
|
||||
!!!
|
||||
%html
|
||||
%head
|
||||
%meta{:content => "text/html; charset=UTF-8", "http-equiv" => "Content-Type"}/
|
||||
%title Dummy
|
||||
%meta{:content => "width=device-width,initial-scale=1", :name => "viewport"}/
|
||||
= csrf_meta_tags
|
||||
= csp_meta_tag
|
||||
= stylesheet_link_tag "application"
|
||||
= javascript_include_tag "application"
|
||||
%script{:src => "https://cdn.tailwindcss.com"}
|
||||
%body
|
||||
= yield
|
@ -2,6 +2,7 @@ require_relative "boot"
|
||||
|
||||
require "rails/all"
|
||||
require 'sprockets/railtie'
|
||||
#require "opal/optimizer/sprockets"
|
||||
|
||||
# Require the gems listed in Gemfile, including any gems
|
||||
# you've limited to :test, :development, or :production.
|
||||
|
@ -29,7 +29,8 @@ Rails.application.configure do
|
||||
# config.assets.js_compressor = :terser
|
||||
# Do not fallback to assets pipeline if a precompiled asset is missed.
|
||||
config.assets.compile = false
|
||||
|
||||
config.assets.js_compressor = :terser
|
||||
|
||||
# Enable serving of images, stylesheets, and JavaScripts from an asset server.
|
||||
# config.asset_host = "http://assets.example.com"
|
||||
|
||||
|
@ -75,23 +75,25 @@ module VueR
|
||||
end
|
||||
|
||||
def decompose(expression)
|
||||
matches = expression.match(/\b[^()]+\((.*)\)$/)
|
||||
return expression if matches.nil?
|
||||
method = expression.split("(").first
|
||||
parts = expression.split("(")
|
||||
method = parts.shift
|
||||
raise "No nested brackets" if parts.length > 1
|
||||
puts "METHOD:#{method}"
|
||||
return [method , [] ] if matches[1].empty?
|
||||
args = matches[1].split(",").collect{| arg | transform_arg(arg) }
|
||||
return [method , [] ] if parts.empty?
|
||||
args = parts.first.split(")").first.split(",")
|
||||
args = args.collect{| arg | transform_arg(arg) }
|
||||
return [method , args]
|
||||
end
|
||||
|
||||
def transform_arg(argument)
|
||||
arg = argument.strip
|
||||
#puts "Arg:#{arg}:"
|
||||
puts "Arg:#{arg}:"
|
||||
return true if arg == "true"
|
||||
return false if arg == "false"
|
||||
return nil if arg == "nil"
|
||||
return arg.to_i if arg == arg.to_i.to_s
|
||||
return arg
|
||||
arg.gsub('"' ,"").gsub("'" , "")
|
||||
|
||||
end
|
||||
end
|
||||
end
|
||||
|
Loading…
Reference in New Issue
Block a user