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 用法说明

相关推荐
liangshanbo12153 小时前
写好 React useEffect 的终极指南
前端·javascript·react.js
哆啦A梦15885 小时前
搜索页面布局
前端·vue.js·node.js
_院长大人_5 小时前
el-table-column show-overflow-tooltip 只能显示纯文本,无法渲染 <p> 标签
前端·javascript·vue.js
哆啦A梦15887 小时前
axios 的二次封装
前端·vue.js·node.js
阿珊和她的猫7 小时前
深入理解与手写发布订阅模式
开发语言·前端·javascript·vue.js·ecmascript·状态模式
yinuo7 小时前
一行 CSS 就能搞定!用 writing-mode 轻松实现文字竖排
前端
snow@li7 小时前
html5:拖放 / demo / 拖放事件(Drag Events)/ DataTransfer 对象方法
前端·html·拖放
浪裡遊9 小时前
Nivo图表库全面指南:配置与用法详解
前端·javascript·react.js·node.js·php
漂流瓶jz10 小时前
快速定位源码问题:SourceMap的生成/使用/文件格式与历史
前端·javascript·前端工程化
samroom10 小时前
iframe实战:跨域通信与安全隔离
前端·安全