reactjs - 如何在 React JS 中应用全屏限制?

标签 reactjs fullscreen

我在这里开发一个考试系统。我想在启动考试组件时应用全屏。 在做学生时严格保持全屏。当他/她退出全屏时,会自动调用一个函数来保存考试结果。

最佳答案

全屏显示有一些限制,但我建议您使用 https://github.com/sindresorhus/screenfull.js .它维护得很好,可以让您更轻松地支持多种浏览器。

在 React 中你可以这样做:

// import/exports depend on your setup, this is just an example
const screenfull = require('screenfull');

class MyComponent extends React.Component {
  componentDidMount() {
    if (screenfull.isEnabled) {
      screenfull.on('change', () => {
        console.log('Am I fullscreen?', screenfull.isFullscreen ? 'Yes' : 'No');
      });
    }
  }

  // enabling fullscreen has to be done after some user input
  toggleFullScreen = () => {
    if (screenfull.isEnabled) {
      screenfull.toggle();
    }
  }

  render() {
    return (
      <button onClick={this.toggleFullScreen}>Toggle fullscreen</button>
    )
  }
}

乐:

要检测全屏更改,您可以使用 screenfull.on('change') 事件:https://github.com/sindresorhus/screenfull.js#detect-fullscreen-change

在上面的例子中为此添加了代码。

关于reactjs - 如何在 React JS 中应用全屏限制?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60446085/

相关文章:

javascript - 取景器分割布局全页 slider 效果

javascript - react setstate接受的对象在setInterval和onClick中是不同的

reactjs - 如果url无效如何重定向到主页

reactjs - setupTests.js 未在 CRA React 应用程序中自动加载

javascript - 如何让 Raphael Canvas 全屏显示?

c++ - SDL - 获取原生屏幕分辨率

尝试读取 .xlsx excel 文件时出现 java.lang.NoSuchMethodError

javascript - 在 React.js 中使用正则表达式过滤数组?

java - 在 WebView 中显示视频问题

c# - 全屏 C# 应用程序