react 全屏显示实现

概述

因为工作需要在前端使用显示大屏数据,在网上搜索了一阵,发现React有几个例子,但是都没有成功,后面想起之前vue-element-admin的框架有全屏功能,果断去那框架里面翻了翻,最后找到screenfull这个组件,然后通过README直接找到github,感谢大佬开源,直接看说明成功解决问题,博文记录,用以备忘。

依赖组件

screenfull

代码实现

javascript 复制代码
import { Button } from 'antd';
import screenfull from 'screenfull';
import { useRef, useState } from 'react';

const InfoBoard: React.FC = () => {
  const containerHandler = useRef(null)
  const [fullscreen, setFullscreen] = useState(false)

  const handleClick = () => {
    if (screenfull.isEnabled) {
      /**
      * 应用内特定Dom对象全屏
      */
      //screenfull.request(containerHandler.current);
		 
      //整个页面全屏
      screenfull.request();
      setFullscreen(true)
    }
  }

  return (
    <>
      <div ref={containerHandler}>
        <div>
          <button onClick={handleClick}>
            Enter fullscreen
          </button>
        </div>
      </div>
    </>
  );
};

export default InfoBoard;

参考链接

screenfull 用法说明

相关推荐
索然无味io3 分钟前
跨站请求伪造之基本介绍
前端·笔记·学习·web安全·网络安全·php
m0_7482565615 分钟前
Windows 11 Web 项目常见问题解决方案
前端·windows
LOVE️YOU16 分钟前
HTML&CSS&JavaScript&DOM 之间的关系?
前端·javascript·css·html
胡西风_foxww17 分钟前
【es6复习笔记】集合Set(13)
前端·笔记·es6·set·集合
m0_7482449626 分钟前
VUE前端实现天爱滑块验证码--详细教程
前端·javascript·vue.js
叫我菜菜就好1 小时前
【Flutter_Web】Flutter编译Web第三篇(网络请求篇):dio如何改造方法,变成web之后数据如何处理
前端·网络·flutter
NoneCoder1 小时前
CSS系列(26)-- 动画性能优化详解
前端·css·性能优化
滚雪球~1 小时前
@vue/cli启动异常:ENOENT: no such file or directory, scandir
前端·javascript·vue.js
GDAL1 小时前
vue3入门教程:ref函数
前端·vue.js·elementui
GISer_Jing1 小时前
Vue3状态管理——Pinia
前端·javascript·vue.js