여기 유즈콜백 왜쓴거에영
유즈콜백이 정확하게 어떤 넘이에영
const { loadAsync } = require('expo-font');
const { useEffect, useCallback, useState } = require('react');
import * as SplashScreen from 'expo-splash-screen';
SplashScreen.preventAutoHideAsync();
const useSplashScreen = () => {
const [appIsReady, setAppIsReady] = useState(false);
const onLayoutRootView = useCallback(async () => {
if (appIsReady) {
// hideAsync : 스플래쉬 스크린이 사라져랏!
// SplashScreen.hideAsync는 appIsReady가 될때까지 기다려잉
await SplashScreen.hideAsync();
}
}, [appIsReady]);
useEffect(() => {
onLayoutRootView();
}, [appIsReady]);
useEffect(() => {
const prepare = async () => {
// 폰트가 모두 다운이 되고 나서야, setAppIsReady를 true로 바꿔주면
// App.js에서
await loadAsync({
'NotoSansKr-Bold': require('../assets/fonts/NotoSansKR-Bold.otf'),
'NotoSansKr-Medium': require('../assets/fonts/NotoSansKR-Medium.otf'),
'NotoSansKr-Regular': require('../assets/fonts/NotoSansKR-Regular.otf'),
'YiSunShin-Dotum-B': require('../assets/fonts/YiSunShin-Dotum-B.otf'),
});
setAppIsReady(true);
};
prepare();
}, []);
return { appIsReady };
};
export default useSplashScreen;
'✍ 따뜻한 개발 공부' 카테고리의 다른 글
임시 메모장 - 수파베이스 관련 (2) | 2023.01.22 |
---|---|
깃 컨밴션 양식 (ㄷㅇ님이 공유해주신 소중한 내용❤️) (0) | 2023.01.20 |
[MySQL] 백엔드도 재밌엉 >_< MySQL 깔짝여보기 / Express , postman 만져보기 (1) | 2023.01.11 |
[기타] 피그마로 프레임짜는거 습득하기 (0) | 2023.01.06 |
[glitch/varcel] glitch 사용하여 라이브서버 만들고 varcel로 배포하기 /묵은 체증 내려간 varcel 배포 성공시키기 원인은 .env 였을까?! (1) | 2023.01.04 |
댓글