import { View, Text, ScrollView, FlatList, Pressable, ActivityIndicator, Image } from 'react-native'; import NormalButton from '../global/normal_button'; import { SafeAreaView } from 'react-native-safe-area-context'; import { router } from 'expo-router'; import RecentlyBookedScrollView from '../global/recentlyBookedScrollView'; import { BellIconSvg, HomeIconSvg, MyBookingIconSvg, MyVehicleIconSvg, QrCodeIconSvg, VipCodeIconSvg } from '../global/SVG'; import { AuthContext } from '../../context/AuthProvider'; import { useContext, useEffect, useState } from 'react'; import { authenticationService } from '../../service/authService'; import { chargeStationService } from '../../service/chargeStationService'; import { walletService } from '../../service/walletService'; import useUserInfoStore from '../../providers/userinfo_store'; interface HomePageProps {} const HomePage: React.FC = () => { const now = new Date(); const { user } = useContext(AuthContext); const { userID, currentPrice, setUserID, setCurrentPrice } = useUserInfoStore(); // Effect for fetching user ID useEffect(() => { const fetchID = async () => { try { const response = await authenticationService.getUserInfo(); if (response) { setUserID(response.data.id); } else { console.log('fail to set user ID'); } } catch (error) { console.log(error); } }; fetchID(); }, []); useEffect(() => { const fetchCurrentPrice = async () => { try { const response = await chargeStationService.getCurrentPrice(); if (response) { setCurrentPrice(response); } } catch (error) { console.log('main page fetch current price error', error); } }; fetchCurrentPrice(); }, []); return ( 你好! {/* */} {user?.nickname} router.push('searchPage')}> 搜尋充電站或地區.. console.log('掃瞄及充電')} onPress={() => router.push('scanQrPage')} title={ 掃描及充電 } extendedStyle={{ alignItems: 'flex-start', padding: 24 }} /> router.push('bookingMenuPage')} title={ 我的預約 } extendedStyle={{ alignItems: 'flex-start', padding: 24 }} /> {/* router.push('myVehiclePage')} title={ 我的車輛 } extendedStyle={{ alignItems: 'flex-start', padding: 24 }} /> */} router.push('accountMainPage')} title={ 我的帳戶 } extendedStyle={{ alignItems: 'flex-start', padding: 24 }} /> console.log('掃瞄及充電')} onPress={() => router.push('vipQrPage')} title={ 專屬會員二維碼 } extendedStyle={{ alignItems: 'flex-start', padding: 24 }} /> ); }; export default HomePage;