使用 useState 要注意初始值的設定

筆記起來。

簡述

就算是空字串也記得要傳值,不可以不填:

1
2
const [value setValue] = useState(); // 錯誤
const [value setValue] = useState(''); // 正確

用錯誤的做法 React 會跟你說 Component 從 Uncontrolled 變 Controlled。

warning

這是因為如果把一個 props 設為 undefined ,React 就會視為沒有傳,然後當成 Uncontrolled。

附註:用 null 也會有一樣的問題,所以建議一律用空字串來當作初始值

1
2
3
4
// controlled 
<input value={undefined} />
// uncontrolled
<input value={""} />

記得注意這個小細節~

一些在手機上 CSS 的小細節 React 基本的路由結構
Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×