mirror of
https://github.com/labring/FastGPT.git
synced 2025-07-23 05:12:39 +00:00
25
packages/web/hooks/useScreen.ts
Normal file
25
packages/web/hooks/useScreen.ts
Normal file
@@ -0,0 +1,25 @@
|
||||
import { useState, useEffect } from 'react';
|
||||
|
||||
export const useScreen = () => {
|
||||
const [screenWidth, setScreenWidth] = useState(window?.innerWidth || 0);
|
||||
const [screenHeight, setScreenHeight] = useState(window?.innerHeight || 0);
|
||||
|
||||
useEffect(() => {
|
||||
function handleResize() {
|
||||
setScreenWidth(window.innerWidth);
|
||||
setScreenHeight(window.innerHeight);
|
||||
}
|
||||
|
||||
window.addEventListener('resize', handleResize);
|
||||
|
||||
// 清理函数
|
||||
return () => {
|
||||
window.removeEventListener('resize', handleResize);
|
||||
};
|
||||
}, []); // 空数组表示这个effect只在组件挂载和卸载时运行
|
||||
|
||||
return {
|
||||
screenWidth,
|
||||
screenHeight
|
||||
};
|
||||
};
|
Reference in New Issue
Block a user