Реагирование веб-приложения на запуск и запрос полноэкранного режима при загрузке - отредактировано - PullRequest
0 голосов
/ 27 августа 2018

Я обманываю, чтобы перефразировать вопрос после нескольких часов попыток взлома и исправлений, без конечного результата.Я использую SCREENFULL npm для этого.

Это веб-приложение представляет собой полноэкранный интерактивный интерфейс для системы меню, используемой сотрудником.Я хотел либо запустить приложение в полноэкранном режиме после загрузки, либо определить, отображать ли в полноэкранном режиме кнопку подсказки для включения полноэкранного режима и запустить приложение.Ни один из них, похоже, не выполняет эту работу вообще.

Мои попытки включали:

goFullScreen (){
  screenfull.request();
}
<button onClick={(e) => this.goFullScreen()}> enable full screen </button>

работает отлично.Выходит на весь экран.Теперь нужно определить, отображать ли приложение (страница входа, меню и т. Д.) Или только полноэкранную кнопку (таким образом, приложение можно просматривать только в полноэкранном режиме).

screenfull.on('change', () => {
    if (screenfull.isFullscreen) {
      console.log("it freaken works");
      return ( 
        <h1> hi </h1>
      )
    } else if (!screenfull.isFullscreen) {
    // display button to go fullscreen
    }
});

Не возвращает <h1> hi </hi> или что-либо еще в пределах возврата, но консоль ведет журнал.Странный.

ОБНОВЛЕНИЕ:

Я решил попробовать DidComponentMount (вместе с событиями onLoad javascript):

componentDidMount () {
  screenfull.request();
  console.log("request happened");
}

Ну, запрос действительно произошел, нополноэкранный режим не включен.После отладки проверки ошибок я получаю ошибку webkitfullscreen с помощью детектора ошибок экрана, включенного в пакет.

Я понятия не имею, почему это не сработает, даже если это так сложно.

Есть ли способ обойти это, или я просто усложняю ситуацию?

Это веб-приложение работает только на планшете Android и в браузере Google Chrome.

1 Ответ

0 голосов
/ 28 августа 2018

Решение было простым.https://developers.google.com/web/fundamentals/native-hardware/fullscreen/

Именно с манифестом JSON я получил мой желаемый результат.

...