Skip to content

Commit

Permalink
feat: 마이프로필 visibilityChange hook 추가(#62)
Browse files Browse the repository at this point in the history
  • Loading branch information
eun-seong committed Mar 2, 2023
1 parent 7f7cd36 commit 98cc2c6
Show file tree
Hide file tree
Showing 2 changed files with 21 additions and 3 deletions.
13 changes: 10 additions & 3 deletions src/containers/Profile/MyProfile/index.tsx
Original file line number Diff line number Diff line change
@@ -1,8 +1,10 @@
import { useEffect } from 'react'
import clsx from 'clsx'

import useHttpRequest from '@/hooks/useHttpRequest'
import { dayBlockAPI } from '@/api'
import useHttpRequest from '@/hooks/useHttpRequest'
import useVisibilityChange from '@/hooks/useVisibilityChange'

import { BASE_URL } from '@/constants/urls'

import rnWebViewBridge from '@/utils/react-native-webview-bridge/new-webview/rnWebViewBridge'
Expand All @@ -29,7 +31,7 @@ const SETTING_LIST = [
]

export default function MyProfileContainer() {
const [myProfile, fetchMyProfile, isLoading] = useHttpRequest(() =>
const [myProfile, fetchMyProfile, isLoading, , isFetch] = useHttpRequest(() =>
dayBlockAPI.getMyProfile().then(({ data }) => data),
)

Expand All @@ -44,8 +46,13 @@ export default function MyProfileContainer() {
fetchMyProfile()
}, [])

useVisibilityChange(() => {
fetchMyProfile()
})

return (
<LoadingContainer loading={isLoading}>
<LoadingContainer loading={!isFetch}>
<LoadingContainer loading={isLoading} />
<div className={clsx('py-[30px]')}>
<div className={clsx('px-[20px]', 'mb-[14px]')}>
<ProfileHeader
Expand Down
11 changes: 11 additions & 0 deletions src/hooks/useVisibilityChange.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
import { useEffect } from 'react'

export default function useVisibilityChange(onVisibility: () => void) {
useEffect(() => {
document.addEventListener('visibilitychange', onVisibility)

return () => {
document.removeEventListener('visibilitychange', onVisibility)
}
})
}

0 comments on commit 98cc2c6

Please sign in to comment.