-
Notifications
You must be signed in to change notification settings - Fork 0
/
App.js
79 lines (61 loc) · 2.25 KB
/
App.js
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
import React, { Component } from 'react';
import { createAppContainer } from 'react-navigation';
import { Provider } from 'react-redux';
import { AppLoading, Font, Asset } from 'expo';
import MainNavigator from './src/navigators';
import store from './src/redux/store';
import { Alert } from './src/components';
const AppContainer = createAppContainer(MainNavigator);
class App extends Component {
state = {
isReady: false,
};
async cacheResourcesAsync() {
await Font.loadAsync({
'avenir-light': require('./assets/fonts/Avenir/Avenir-Light.ttf'),
'avenir-light-oblique': require('./assets/fonts/Avenir/Avenir-LightOblique.ttf'),
'avenir-book': require('./assets/fonts/Avenir/Avenir-Book.ttf'),
'avenir-book-oblique': require('./assets/fonts/Avenir/Avenir-BookOblique.ttf'),
'avenir-roman': require('./assets/fonts/Avenir/Avenir-Roman.ttf'),
'avenir-roman-oblique': require('./assets/fonts/Avenir/Avenir-Oblique.ttf'),
'avenir-medium': require('./assets/fonts/Avenir/Avenir-Medium.ttf'),
'avenir-medium-oblique': require('./assets/fonts/Avenir/Avenir-MediumOblique.ttf'),
'avenir-heavy': require('./assets/fonts/Avenir/Avenir-Heavy.ttf'),
'avenir-heavy-oblique': require('./assets/fonts/Avenir/Avenir-HeavyOblique.ttf'),
'avenir-black': require('./assets/fonts/Avenir/Avenir-Black.ttf'),
'avenir-black-oblique': require('./assets/fonts/Avenir/Avenir-BlackOblique.ttf'),
'Linearicons-Free': require('./assets/fonts/LinearIcons/Linearicons-Free.ttf'),
Fontello: require('./assets/fonts/Icons/font/fontello.ttf'),
});
const images = [
// require('./assets/images/marker.png'),
require('./assets/images/logo-text.png'),
];
for await (image of images) {
Asset.fromModule(image).downloadAsync();
}
return true;
}
render() {
if (!this.state.isReady) {
return (
<AppLoading
startAsync={this.cacheResourcesAsync}
onFinish={() => this.setState({ isReady: true })}
onError={console.warn}
/>
);
}
return (
<React.Fragment>
<AppContainer />
<Alert />
</React.Fragment>
);
}
}
export default () => (
<Provider store={store}>
<App />
</Provider>
);