прогрессивное веб-приложение не работает на рабочем сервере - PullRequest
0 голосов
/ 19 июня 2020

Платформа, которую я использую для разработки своего проекта, следующая js. Я использую бессерверную технологию для развертывания. Облачная функция Google с хостингом firebase используется для бессерверного развертывания. Развертывание проходит нормально. Единственная проблема в том, что мое приложение не показывает значок «Установить это приложение» в адресной строке браузера. Он появляется, только если я перехожу в автономный режим, перейдя в Application / Service Workers на консоли. Манифест и все настроено правильно. Никаких проблем не отображается.

enter image description here

Для функции автономного веб-приложения я использовал next-pwa библиотеку

Вот как у меня used

const withPlugins = require("next-compose-plugins");
const optimizedImages = require("next-optimized-images");
const withPWA = require("next-pwa");

module.exports = withPlugins(
  [optimizedImages],
  withPWA({
    pwa: {
     dest: "public",
    },
  }),
);

Я установил файл sw. js на firebase. json также

"hosting": {
    "public": "public",
    "ignore": ["firebase.json", "**/.*", "**/node_modules/**", ".hooks"],
    "headers": [
      {
        "source": "/sw.js",
        "headers": [{ "key": "Cache-Control", "value": "no-cache" }]
      }
    ],
    "rewrites": [
      {
        "source": "**/**",
        "function": "next"
      }
    ]
  },

server. js

const functions = require('firebase-functions')
const next = require('next')

var dev = false
var app = next({ dev, conf: { distDir: '.next' } })
var handle = app.getRequestHandler()

exports.next = functions.https.onRequest((req, res) => {
  return app.prepare().then(() => handle(req, res))
})

Я что-то пропустил, чтобы мое приложение было автономным?

...