Как я могу загрузить динамически сгенерированные файлы PDF на PWA при добавлении на домашний экран на iOS? - PullRequest
0 голосов
/ 11 июля 2019

У меня есть этот PWA, который пользователь может щелкнуть по ссылке, чтобы создать отчет в формате PDF. Когда файл открывается, у меня просто есть кнопка ОК, которая закрывает файл, и больше ничего, это происходит, когда пользователь добавляет его на домашний экран:

https://i.redd.it/24rbih326q931.jpg

Попробовал простой HTML-тег, но в этом случае даже закрытие файла не показало, что мне пришлось перезапустить приложение. Когда я использовал функцию Javascript window.open (), у меня была опция «Ок», чтобы закрыть файл.

<img src="pdf.png" onclick='geraPDF(1045, 45)'>
function geraPDF(c, v){var jan=window.open("geraPdfTermoAdesao.php?c="+c+"&v="+v, "adesao", "location: 0;");}

Я хочу дать пользователям возможность печатать, делиться или даже сохранять локально этот файл PDF. Когда одно и то же приложение используется на вкладке Safari, у меня появляются эти опции.

РЕДАКТИРОВАТЬ 16/07/2019 Похоже, Safari наконец-то исправляет ошибку тега: как видно на: iOS: добавлена ​​поддержка атрибута загрузки , в результате тег загрузки снова заработает.

1 Ответ

0 голосов
/ 12 июля 2019

Когда вы «устанавливаете» PWA на домашнем экране, он рендерится в соответствии со значениями, выбранными в свойстве display манифеста веб-приложения (вы можете прочитать более подробную информацию здесь ), но кроме что оно составляет 1: 1 как обычное веб-приложение.

Поэтому, если вы хотите предоставить HTML-элементы для взаимодействия со страницей (если я правильно понял ваш вопрос), вы должны реализовать их самостоятельно. В конце концов вы можете реализовать пользовательское меню или строку заголовка.


Обновление

Как правило, если вы планируете открыть внешнюю ссылку в PWA, для удобства пользователей ее следует открывать в браузере, а не в вашем PWA. Обычно пользователь хочет остаться в контексте PWA. Более того, если вы откроете PDF-файл на отдельной странице, которая не находится внутри или не является частью вашего приложения, у вас не будет дополнительных кнопок, кроме стандартных, предусмотренных браузером по умолчанию.

Что бы я предложил, это попытаться открыть PDF-файл внутри div / контейнера в вашем приложении (возможно, это разрешено разными библиотеками), а затем добавить любой элемент пользовательского интерфейса, который вам может понадобиться.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...