Clapton
repoが消えてる...?bsahd.icon
code:video_component.rb
class VideoComponent < Clapton::Component
def render
box = c(:box)
box
.add(c(:button)
.add(c(:text, @state.is_playing ? "Pause" : "Play")))
.add_action(:click, :VideoState, :toggle_play)
box.add(VideoPlayerComponent.new(url: @state.video_url, is_playing: @state.is_playing))
end
end
code:video_player_component.rb
class VideoPlayerComponent < Clapton::Component
def render
c(:embed, <<~HTML
<video id="video" src="#{@state.url}"></video>
HTML
)
end
document.getElementById("video").play()
else
document.getElementById("video").pause()
end
end
end
サーバーサイドで非同期処理を選べるようにしたいんだけどいいインタフェースが思いついてない
しかし、actionの中でyieldで最初にメッセージ送ってれば非同期と同じことはできるのか?