반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- Ros
- 사이드프로젝트
- pandas
- React
- 정치인
- TeachagleMachine
- 머신러닝
- 딥러닝
- python
- 강화학습
- 강화학습 기초
- Instagrame clone
- JavaScript
- 조코딩
- 앱개발
- 데이터분석
- 크롤링
- coding
- selenium
- 전국국밥
- redux
- App
- expo
- 리액트네이티브
- ReactNative
- kaggle
- FirebaseV9
- 클론코딩
- clone coding
- 카트폴
Archives
- Today
- Total
qcoding
[React Native study_1] Expo API <App_loading> 본문
반응형
App 시작 시 로딩 화면 (Splash) 화면을 구성하는 데 필요한 expo SDK API
아래의 Apploading 호출 후 사용한다.
import AppLoading from 'expo-app-loading';
이 때 Appload 내에는 여러가지 pros가 있는데
startAsync -> 시작 시에 비동기적으로 api등을 받아 올때 사용할 수 있으며 이것이 종료될 때에는
( 맨 처음 api나 그림파일 등을 불러올 때 비동기로 코드를 작성하면 됨)
onFinish 가 실행되게 된다.
import React from 'react';
import { Image, Text, View } from 'react-native';
import { Asset } from 'expo-asset';
import AppLoading from 'expo-app-loading';
export default class App extends React.Component {
state = {
isReady: false,
};
render() {
if (!this.state.isReady) {
return (
<AppLoading
startAsync={this._cacheResourcesAsync}
onFinish={() => this.setState({ isReady: true })}
onError={console.warn}
/>
); }
return (
<View style={{ flex: 1 }}>
<Image source={require('./assets/snack-icon.png')} />
</View>
);
}
async _cacheResourcesAsync() {
const images = [require('./assets/snack-icon.png')];
const cacheImages = images.map(image => {
return Asset.fromModule(image).downloadAsync();
});
return Promise.all(cacheImages);
}
}
반응형
'ReactNative' 카테고리의 다른 글
[ReactNative_study_6]Theme Provider 사용하기 (0) | 2021.11.23 |
---|---|
[ReactNative_study_5]Stack / Tab navigator 결합 (0) | 2021.11.23 |
[ReactNative_study_4]Stack Navigator (0) | 2021.11.23 |
[ReactNative_study_3] Navigator_Tabs / Color mode (0) | 2021.11.23 |
[ReactNative_study_2] 로딩 전 파일 불러오기 font/ asset (0) | 2021.11.22 |
Comments