BridgeCraft logobridgecraft
週報顧問服務作品集關於聯絡登入
聯絡

bridgecraft

從資料視覺化到 AI Agent,一直在找下一個 meta

文章主題指南週報顧問服務Labs作品集系統架構關於聯絡RSS

© 2026 BridgeCraft — Waiting7777. All rights reserved.

← 所有文章

React Conf 2021 - React Develop Tooling

2022年1月15日 · Waiting7777 · 2 分鐘閱讀

Hooks name

在目前的版本,react tool 並沒辦法顯示 hook 的 “name”,所以 hook 在 dev tool 裡面看起來都一樣還要看他的 state 來得知是哪一個。

那麼什麼是 hook 的 “name” 呢?當大家提起 hook 的時候,通常說的是他的變數名稱。

所以 devtool 從 source map 取得 source code 然後 parse 出變數名稱來顯示。

Timeline

React devtool 新增了 timeline 區塊,看請來就像瀏覽器效能工具,但跟瀏覽器效能工具不同的是,react devtool 提供了更詳細的訊息以及建議。

function App() {
  const [text, setText] = useState("")
  
  const updateText = event => {
    setText(event.target.value)
  }
  
  return (
    <>
      <input value={text} onChange={updateText} />
      <FilteredList filterBy={text} />
    </>
  )
}

這是一個由 text 控制的 input 以及一個 list,在打字並擷取後看一下 timeline

當打字時,因為 input 跟 list 要同時更新,所以整個更新時間總和會比較長,這時候 devtool 就建議我們將這個更新分開。

這時就可以用 react 18 裡面的新 hook useDeferredValue

function App() {
  const [text, setText] = useState("")
  const deferredText = useDeferredValue(text)
  
  const updateText = event => {
    setText(event.target.value)
  }
  
  return (
    <>
      <input value={text} onChange={updateText} />
      <FilteredList filterBy={deferredText} />
    </>
  )
}

這 hook 接收一個 value 並且回傳一個稍微滯後(優先級較低)版本的值,這樣就可以把 input 跟 list 的更新分開,讓 input 的更新比較即時,然後比較昂貴的 list 更新稍微延後一些讓整體體驗更好。

在圖中就可以看到 input 跟 list 的更新分開了。

Timeline - Suspense

Suspense 是新的 API ,可以告訴 react 需要等待一些東西,而在 devtool 中同樣也會紀錄 Suspense 的狀態並且顯示在 Timeline 中。

Timeline - Browser context

如果有個情境,應用程式要從外部拿取 json 並且執行昂貴的 parse 後才把資料存回 react 中,就算上述所說行為都在 render 之外,Timeline 同樣可以展示發生了什麼。

What’s next?

  • Profiler 和 Timeline 的整合
  • React Native 的 profiling, inspecting, debugging
  • Server Component 的使用

總結

在 React Developer Tooling 這 stage 算是一種火力展示吧,但 hook name 這功能看起來 parse source code 蠻花時間的,所以是給個按鈕按了才展示,同時也見識到了 useDeferredValue 的使用場景,期望新的 tool 可以在 coding 上給予更多的幫助。

Reference

React Conf 2021

每週一篇 — 技術趨勢背後的商業邏輯

分享:

Waiting7777

WoW Arena 冠軍轉前端,用電競 meta 思維拆解技術趨勢。

關於作者

相關文章

GitHub 用 AI 自動跑 fuzzing — 資安測試要被取代了嗎?GitHub CopilotAI Agents+5

GitHub 用 AI 自動跑 fuzzing — 資安測試要被取代了嗎?

AI 做 fuzzing 這件事的意義不只是「測試更快」,而是把過去需要資安專家才能做的事民主化了。拆解 Taskflow Agent 的工作流程,評估它實際上能取代多少人工、局限在哪。

2026年9月25日 · Waiting7777 · 7 分鐘閱讀

繼續閱讀 →
VC 瘋投 Shopping Agent,但 Amazon 已經開始封鎖了:這個賽道值得賭嗎AI AgentsVC+4

VC 瘋投 Shopping Agent,但 Amazon 已經開始封鎖了:這個賽道值得賭嗎

把這篇跟 Amazon 封鎖 Meta 的事件一起看 — VC 瘋狂投錢進來,但平台方已經開始設防,這個賽道的商業風險遠比技術風險大。

2026年9月22日 · Waiting7777 · 7 分鐘閱讀

繼續閱讀 →
AI 第三時代:「永遠在線的 AI 同事」這個概念是真的嗎?GPTAI+2

AI 第三時代:「永遠在線的 AI 同事」這個概念是真的嗎?

從「AI 同事」這個框架切入,評估這個概念是真實趨勢還是產品行銷話術 — 什麼樣的工作場景真的需要 persistent AI,什麼場景還是用工具就夠了。

2026年9月20日 · Waiting7777 · 7 分鐘閱讀

繼續閱讀 →

這篇文章對你有幫助嗎?

每週一篇 — 技術趨勢背後的商業邏輯

AI 產業在變什麼、工程師該注意什麼——拆清楚寄到你的信箱。