Hook
- Hook 是 function,他讓你可以從 function component「hook into」React state 與生命週期功能
- Hook可以從 component 抽取 stateful 的邏輯,如此一來它就可以獨立地被測試和重複使用
- 不用建立Class就能使用React的state方法
useState
- useState 是一個讓你增加 React state 到 function component 的 Hook
- 變數會在 function 結束時「消失」,但 state 變數會被 React 保留起來
import React,{useState} from 'react';
import {Text, StyleSheet, View, TextInput} from 'react-native';
const TextScreen = () => {
const [name, setName] = useState('');
return(
<View>
<TextInput value={name} onChangeText={(newValue) => setName(newValue)} />
</View>
);
}
const styles = StyleSheet.create({});
export default TextScreen;
useEffect

- 在物件首次顯現時執行一次
import React,{useState, useEffect} from 'react';
import {Text, StyleSheet, View, TextInput} from 'react-native';
useEffect( () => {
searchApi('pasta');
},[]);
- 在物件首次顯現時執行一次然後條件成立時再執行一次
import React,{useState, useEffect} from 'react';
import {Text, StyleSheet, View, TextInput} from 'react-native';
[date, setDate] = useState();
useEffect( () => {
searchApi('pasta');
},[date]);