Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
2016-03-11.gotandajs.introduction-of-riot.pdf
Search
mizuki_r
March 11, 2016
Technology
68
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
2016-03-11.gotandajs.introduction-of-riot.pdf
mizuki_r
March 11, 2016
More Decks by mizuki_r
See All by mizuki_r
FrontendUp_新規事業で_Remixを採用した理由と対策.pdf
rymizuki
0
260
税理士ドットコムの 技術的挑戦 #tapioca_lt
rymizuki
0
320
PHPを始めて1年、レガシーシステムにどう向き合っているか #phpstudy
rymizuki
1
850
モダンとレガシー #gotandaem
rymizuki
0
600
Vuexに型を付けるパターンを調べた #gotandajs
rymizuki
0
160
DockerでNodeの開発は厳しいのか? #gotandajs
rymizuki
3
430
マネージャー!きみは何者だ! #gotandaem
rymizuki
0
1.8k
物語を楽しむための物語論
rymizuki
0
570
失敗と向き合う
rymizuki
0
1.6k
Other Decks in Technology
See All in Technology
AI駆動開発を組織で促すために
lycorptech_jp
PRO
1
290
Bill One 開発エンジニア 紹介資料
sansan33
PRO
7
20k
医療の現場を変革に挑戦した半年間の軌跡 - PythonとAIで現場を変える / From Code to Care
soudai
PRO
1
620
Data Hubグループ 紹介資料
sansan33
PRO
0
3.2k
dbt と Snowflake と tag
kevinrobot34
1
250
ClaudeCodeでセキュリティ監視業務を半自動化_1年の運用でわかったAIに任せる設計の5つのポイント
kintotechdev
2
300
Eight Engineering Unit 紹介資料
sansan33
PRO
3
8.3k
暗号化?某ファイルストレージはどうなるの!? 3rd Partyとうまく付き合う秘密度ラベル設計
kasada
0
200
[potatotips #96] Give Your AI Agent the Flutter Playbook
korodroid
0
170
AI時代の「OAuth認証」にどう物申すか?(OAuth/OIDC Numa (Immersion) Workshop 2026)
oidfj
PRO
0
250
AIエージェントのためのデータ設計
daiz21
0
220
マイナンバーカード本人確認の実装比較(OAuth/OIDC Numa (Immersion) Workshop 2026) / 20260825 numa-12
oidfj
PRO
0
260
Featured
See All Featured
Reality Check: Gamification 10 Years Later
codingconduct
0
2.3k
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
6.1k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.6k
Navigating Weather and Climate Data
rabernat
0
490
Being A Developer After 40
akosma
91
590k
[SF Ruby Conf 2025] Rails X
palkan
2
1.3k
How to Talk to Developers About Accessibility
jct
2
520
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
450
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.5k
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
260
First, design no harm
axbom
PRO
2
1.3k
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
670
Transcript
Introduction of RiotJS 2016/03/11 Gotanda.js #3 @mizuki_r 1
PROFILE @mizuki_r 5XJUUFS!NJ[VLJ@S (JUIVCSZ@NJ[VLJ OQNNJ[VLJ@S "OHVMBS 3JPU+4·ΘΓͷ͍ख ࠷ۙϑϩϯτΤϯυͷΞʔΩς ΫνϟΛߟ͑Δ͜ͱ͕ଟ͍ 2
INTRODUCTION RIOT-JS 3
hmm… this is very difficult… ( ŋั﹏ŋั) I THOUGHT THE
TALK 4
do you know Riot? 5
~Fin~ 6
tell the usage of Riot 7
http://riotjs.com/ja/guide/ 8
~Fin~ 9
tell the spirit of Riot 10
http://riotjs.com/ja/ 11
~Fin~ 12
INTRODUCTION it’s not joke! ▸ Riot is very minimum ▸
Riot is very simple ▸ Riot is very easy ▸ Riot is very casual 13
<todo> <!-- layout --> <h3>{ opts.title }</h3> <ul> <li each={
item, i in items }>{ item }</li> </ul> <form onsubmit={ add }> <input> <button>Add #{ items.length + 1 }</button> </form> <!-- logic --> <script> this.items = [] add(e) { var input = e.target[0] this.items.push(input.value) input.value = '' } </script> <todo> 14
VS REACT RIOT-JS 15
http://riotjs.com/ja/compare/ 16
WHY RIOT RIOT-JS 17
WHY RIOT why Riot ▸ easy to learn ▸ easy
to use ▸ make small, summarize small 18
WHY RIOT easy to learn ▸ lifecycle (mount, update, updated,
unmount) ▸ update ▸ yield ▸ dom events http://riotjs.com/ja/api/ 19
WHY RIOT easy to use ▸ script in html ▸
very simple usage <todo> <!-- layout --> <h3>{ opts.title }</h3> <ul> <li each={ item, i in items }>{ item }</li> </ul> <form onsubmit={ add }> <input> <button>Add #{ items.length + 1 }</button> </form> <!-- logic --> <script> this.items = [] add(e) { var input = e.target[0] this.items.push(input.value) input.value = '' } </script> <todo> <body> <!-- place the custom tag anywhere inside the body --> <todo></todo> <!-- include riot.js --> <script src="riot.min.js"></script> <!-- include the tag --> <script src="todo.js" type="riot/tag"></script> <!-- mount the tag --> <script>riot.mount('todo')</script> </body> 20
WHY RIOT make small 1. create html ٩(๑´3ʆ๑)۶ 2. separate
tags 3. ʮhum… it’s largeʯ(´ɾωɾʆ) 4. separate tags 5. repeat 1 … 4 ٩(๑`^´๑)۶ possible to turn a lot of small cycle!! 21
WHY RIOT sammrize small example of using webpack. view/app/components ᵓᴷᴷ
ffp ᴹ ᵓᴷᴷ index.tag ᴹ ᵋᴷᴷ style.css ᵓᴷᴷ ffp-body ᴹ ᵓᴷᴷ index.tag ᴹ ᵓᴷᴷ store.js ᴹ ᵋᴷᴷ style.css ᵓᴷᴷ ffp-code-pretty ᴹ ᵓᴷᴷ index.tag ᴹ ᵓᴷᴷ store.js ᴹ ᵋᴷᴷ style.css ᵓᴷᴷ ffp-header ᴹ ᵓᴷᴷ index.tag ᴹ ᵋᴷᴷ style.css ᵓᴷᴷ ffp-input ᴹ ᵓᴷᴷ action-creator.js ᴹ ᵓᴷᴷ index.tag ᴹ ᵋᴷᴷ style.css ᵓᴷᴷ ffp-loading ᴹ ᵓᴷᴷ index.tag ᴹ ᵓᴷᴷ store.js ᴹ ᵋᴷᴷ style.css ᵋᴷᴷ ffp-result ᵓᴷᴷ index.tag ᵓᴷᴷ store.js ᵋᴷᴷ style.css https://github.com/rymizuki/electron- ffp/tree/master/view/app/ components possible to separate into component. 22
USE CASE RIOT-JS 23
USE CASE there is a problem also… ‣ take over
all of the data on child becomes larger, there is danger of conflict!!! todoList.todos => { todos } todoList.tags.todo => { todos, name, description } todoList.tags.todo.tags.description => { todos, name, description, content } 24
USE CASE use case ‣ try quickly ideas ‣ make
a small app ‣ when just want to write ‣ in combination with other libraries started small, until the scale of the moderate 25
CONCLUSION RIOT-JS 26
CONCLUSION Riot is awesome ‣ Riot is very minimum ‣
Riot is very simple ‣ Riot is very easy ‣ Riot is very casual 27
THANKS! 28