iT邦幫忙

鐵人檔案

2021 iThome 鐵人賽
回列表
Software Development

From State Machine to XState 系列

介紹狀態機的概念、目的到如何實際在當代框架中開發應用

鐵人鍊成 | 共 31 篇文章 | 44 人訂閱 訂閱系列文 RSS系列文 團隊Web 實驗室
DAY 21

Day21 - 在 XState, 狀態機器裡無窮盡的狀態、 資料:Extended State and context - 1

1. Extended State 前面學習到的 FSM ,我們透過枚舉、列舉 (Enumerate),一個狀態機內所有可能的狀態,狀態機被提供的狀態是有限(F...

2021-10-06 ‧ 由 Ken Chen 分享
DAY 22

Day22 - 在 XState, 狀態機器裡無窮盡的狀態、 資料:Extended State and context and assign API - 2

問題延伸 1. 請問如何動態載入不同的 context ? 比如說我們這台狀態機想要給許多不同的店家共用,比如「綠洲酒吧」、「蘋果旗艦店」... 難道我需要一直...

2021-10-07 ‧ 由 Ken Chen 分享
DAY 23

Day23 - 在 XState 中的平行式狀態 Parallel States

還記得我們在 Day 13 的例子嗎? 有個 Input 的 UI 元件,且它有以下 [Invalid / Valid]、[Disabled / Enabled...

2021-10-08 ‧ 由 Ken Chen 分享
DAY 24

Day24 - 在 XState 中的階層式狀態 Hierarchical States

還記得我們在 Day 14 的例子嗎? 這是一個比較符合現實情境的 Input 元件狀態,只有當 input content 有改變時, valid / i...

2021-10-09 ‧ 由 Ken Chen 分享
DAY 25

Day25 - 保護你的狀態轉移,在 XState 中使用 Guard Transition

還記得我們在 Day 15 曾經介紹過 Guard 嗎? 今天要來跟大家分享如何在 XState 中使用 Guard 保護狀態轉移 const someMach...

2021-10-10 ‧ 由 Ken Chen 分享
DAY 26

Day26 - 使用 Guard 來實作一個馬克杯的狀態機

還記得在 Day 15 馬克杯 裝水 Guard 的例子嗎? 另外一組例子,一個水瓶或是馬克杯的狀態一開始是『空的』,有「裝水」這個事件,每次要裝水時,都會當...

2021-10-11 ‧ 由 Ken Chen 分享
DAY 27

Day27 - 子狀態 or 子狀態機?與外部溝通!概念簡介: invoke services v.s. spawn actors in XState

先前我們介紹過了階層式狀態,讓我們能將一個狀態向下描述得更精確,比如以之前的 input 元件狀態機當 input 是 changed 時,可以更向下描述,這個...

2021-10-12 ‧ 由 Ken Chen 分享
DAY 28

Day 28 - XState in React (著重: local state)

前面介紹許多 State Machine 及 XState 的功能,由於篇幅不多了,今天想跟大家先快速的介紹一下在 React 中如何使用 XState。 快速...

2021-10-13 ‧ 由 Ken Chen 分享
DAY 29

Day 29 - XState in React 2 (著重: global state and performance concerned)

1. XState as Global State in React 在 React 提到 Global State 時,大家很常會想到 React conte...

2021-10-14 ‧ 由 Ken Chen 分享
DAY 30

Day 30 - Finite State Machine x XState 推薦學習資源

說到學習資源,最容易學習的方式就是從母語開始 中文文章 Jerry Hong 的部落格Jerry 在前端社群相當樂於分享,也是之前鐵人賽的冠軍,其文筆及範例、說...

2021-10-15 ‧ 由 Ken Chen 分享