Skip to content

Commit a4dea6c

Browse files
authored
Merge pull request #77 from frontend-opensource-project/URH-96/use-detect-device
[URH-96] useDetectDevice ๋ฌธ์„œ ์‹ ๊ทœ
2 parents f2f8d94 + 97679da commit a4dea6c

File tree

2 files changed

+54
-0
lines changed

2 files changed

+54
-0
lines changed

โ€Ždocs/pages/docs/hooks/_meta.jsonโ€Ž

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
{
22
"useDeepCompareEffect": "useDeepCompareEffect",
3+
"useDetectDevice": "useDetectDevice",
34
"useKeyCombination": "useKeyCombination",
45
"useLongPress": "useLongPress",
56
"useMousePosition": "useMousePosition",
Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
# useDetectDevice
2+
3+
## Introduce
4+
5+
ํ˜„์žฌ ๋””๋ฐ”์ด์Šค์˜ ์œ ํ˜•(moblie, desktop), OS ๋ฐ Browser๋ฅผ ๊ฐ์ง€ํ•ฉ๋‹ˆ๋‹ค.
6+
7+
import { Callout } from 'nextra/components';
8+
9+
<Callout type="info">
10+
userAgent์˜ ์—…๋ฐ์ดํŠธ๋กœ ์ธํ•˜์—ฌ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ž‘๋™ํ•˜์ง€ ์•Š์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์œ ์˜ํ•ด์„œ
11+
์‚ฌ์šฉํ•ด์ฃผ์„ธ์š”.
12+
</Callout>
13+
14+
```ts
15+
interface UseDeviceDetectReturns {
16+
isMobile: boolean;
17+
isDesktop: boolean;
18+
os: string;
19+
browser: string;
20+
}
21+
22+
const useDetectDevice = (): UseDeviceDetectReturns
23+
```
24+
25+
### Returns
26+
27+
- `isMobile` : ์‚ฌ์šฉ ์ค‘์ธ ๋””๋ฐ”์ด์Šค์˜ Mobile ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.
28+
- `isDesktop` : ์‚ฌ์šฉ ์ค‘์ธ ๋””๋ฐ”์ด์Šค์˜ Desktop ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.
29+
- `os` : ์‚ฌ์šฉ ์ค‘์ธ ๋””๋ฐ”์ด์Šค์˜ OS ์ด๋ฆ„(๋ฌธ์ž์—ด)์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.\
30+
cf) Windows, macOS, Linux, Android, iOS
31+
- `browser` : ์‚ฌ์šฉ ์ค‘์ธ ๋ธŒ๋ผ์šฐ์ €์˜ ์ด๋ฆ„(๋ฌธ์ž์—ด)์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.\
32+
cf) Chrome, Safari, Whale, Edge, Firefox
33+
34+
## Examples
35+
36+
```tsx copy filename="TestComponent.tsx"
37+
const TestComponent = () => {
38+
39+
const { isMobile, os, browser } = useDeviceDetect();
40+
41+
return (
42+
<div>
43+
<div>
44+
{isMobile && (
45+
<>
46+
<div>๋ชจ๋ฐ”์ผ ํ™˜๊ฒฝ์— ์ตœ์ ํ™”๋œ ์ฝ˜ํ…์ธ </div>
47+
<div>...</div>
48+
</>
49+
)}
50+
</div>
51+
);
52+
};
53+
```

0 commit comments

Comments
ย (0)