styles.css:

/* styles.css */body {  font-family: Arial, sans-serif;  text-align: center;  background-color: #f0f0f0;  color: #333;}

app.js:

// app.jsif (\\'serviceWorker\\' in navigator) {  window.addEventListener(\\'load\\', () => {    navigator.serviceWorker.register(\\'/service-worker.js\\')      .then(registration => {        console.log(\\'ServiceWorker registered: \\', registration);      })      .catch(error => {        console.log(\\'ServiceWorker registration failed: \\', error);      });  });}

6. Einrichten des Servicemitarbeiters

Ein Service Worker ist ein Skript, das der Browser getrennt von der Webseite im Hintergrund ausführt. Es fängt Netzwerkanfragen ab und kann Ressourcen zwischenspeichern, um die Leistung und Offline-Funktionen zu verbessern.

service-worker.js:

// service-worker.jsconst CACHE_NAME = \\'my-pwa-cache-v1\\';const urlsToCache = [  \\'/\\',  \\'/styles.css\\',  \\'/app.js\\',  \\'/manifest.json\\',  \\'/icon-192x192.png\\',  \\'/icon-512x512.png\\'];self.addEventListener(\\'install\\', event => {  event.waitUntil(    caches.open(CACHE_NAME)      .then(cache => {        return cache.addAll(urlsToCache);      })  );});self.addEventListener(\\'fetch\\', event => {  event.respondWith(    caches.match(event.request)      .then(response => {        return response || fetch(event.request);      })  );});

7. Einrichten des Servers

server.js:

const express = require(\\'express\\');const path = require(\\'path\\');const app = express();const PORT = process.env.PORT || 3000;app.use(express.static(path.join(__dirname, \\'public\\')));app.listen(PORT, () => {  console.log(`Server is running on http://localhost:${PORT}`);});

Ausführen des Servers:

node server.js

8. Testen Sie Ihre PWA

  1. Öffnen Sie die App:

  2. Servicemitarbeiter-Registrierung:

  3. Zum Startbildschirm hinzufügen:

9. Best Practices für PWAs

Best Practices:

10. Fazit

Fassen Sie die wichtigsten behandelten Punkte zusammen:

11. Zusätzliche Ressourcen

","image":"http://www.luping.net/uploads/20240819/172406232366c31a735dfeb.jpg","datePublished":"2024-08-19T18:12:03+08:00","dateModified":"2024-08-19T18:12:03+08:00","author":{"@type":"Person","name":"luping.net","url":"https://www.luping.net/articlelist/0_1.html"}}
„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Progressive Web Apps (PWAs)

Progressive Web Apps (PWAs)

Veröffentlicht am 19.08.2024
Durchsuche:476

Progressive Web Apps (PWAs)

Erstellen von Progressive Web Apps (PWAs)

In diesem Beitrag werden wir Progressive Web Apps (PWAs) untersuchen, einen modernen Ansatz zum Erstellen von Webanwendungen, die ein natives App-ähnliches Erlebnis bieten. Ich werde die Grundlagen von PWAs, ihre Vorteile und die Schritte zum Erstellen einer PWA von Grund auf behandeln.

1. Einführung in Progressive Web Apps (PWAs)

Was ist eine Progressive Web App (PWA)?

Eine Progressive Web App ist eine Art Anwendungssoftware, die über das Web bereitgestellt wird und unter Verwendung gängiger Webtechnologien wie HTML, CSS und JavaScript erstellt wird. PWAs sollen auf jeder Plattform funktionieren, die einen standardkonformen Browser verwendet.

Hauptmerkmale von PWAs:

  • Responsive: Funktioniert auf jedem Gerät und jeder Bildschirmgröße.
  • Offline-Fähigkeit: Funktioniert offline oder bei schlechten Netzwerkbedingungen mithilfe von Servicemitarbeitern.
  • App-ähnliches Erlebnis: Bietet ein App-ähnliches Benutzererlebnis mit Funktionen wie der Installation auf dem Startbildschirm.
  • Sicher: Wird über HTTPS bereitgestellt, um Snooping zu verhindern und die Inhaltsintegrität sicherzustellen.
  • Wiedereinschaltbar: Ermöglicht Push-Benachrichtigungen, um Benutzer zu motivieren.

2. Vorteile von PWAs

Warum eine PWA erstellen?

  • Verbesserte Leistung: Schnellere Ladezeiten und reibungslosere Interaktionen.
  • Verbesserte Benutzereinbindung: Push-Benachrichtigungen und Zugriff auf den Startbildschirm.
  • Geringere Entwicklungskosten: Eine einzige Codebasis für Web- und Mobilerlebnisse.
  • SEO-Vorteile: PWAs sind für Suchmaschinen auffindbar.

3. Einrichten einer PWA

Voraussetzungen:

  • Grundkenntnisse in HTML, CSS und JavaScript.
  • Node.js und npm/yarn installiert.

Eine einfache PWA erstellen:

  1. Projekteinrichtung:

    mkdir my-pwa
    cd my-pwa
    npm init -y
    npm install express
    
  2. Projektstruktur:

    my-pwa/
    ├── public/
    │   ├── index.html
    │   ├── styles.css
    │   └── app.js
    ├── server.js
    ├── package.json
    └── manifest.json
    

4. Erstellen der Manifestdatei

manifest.json:

Die Manifestdatei stellt Metadaten über die PWA bereit und ist für die Installation der App auf dem Startbildschirm erforderlich.

// manifest.json
{
  "name": "My PWA",
  "short_name": "PWA",
  "start_url": "/",
  "display": "standalone",
  "background_color": "#ffffff",
  "theme_color": "#007bff",
  "icons": [
    {
      "src": "icon-192x192.png",
      "sizes": "192x192",
      "type": "image/png"
    },
    {
      "src": "icon-512x512.png",
      "sizes": "512x512",
      "type": "image/png"
    }
  ]
}

5. Erstellen der HTML-, CSS- und JavaScript-Dateien

index.html:



  My PWA

Welcome to My Progressive Web App!

styles.css:

/* styles.css */
body {
  font-family: Arial, sans-serif;
  text-align: center;
  background-color: #f0f0f0;
  color: #333;
}

app.js:

// app.js
if ('serviceWorker' in navigator) {
  window.addEventListener('load', () => {
    navigator.serviceWorker.register('/service-worker.js')
      .then(registration => {
        console.log('ServiceWorker registered: ', registration);
      })
      .catch(error => {
        console.log('ServiceWorker registration failed: ', error);
      });
  });
}

6. Einrichten des Servicemitarbeiters

Ein Service Worker ist ein Skript, das der Browser getrennt von der Webseite im Hintergrund ausführt. Es fängt Netzwerkanfragen ab und kann Ressourcen zwischenspeichern, um die Leistung und Offline-Funktionen zu verbessern.

service-worker.js:

// service-worker.js
const CACHE_NAME = 'my-pwa-cache-v1';
const urlsToCache = [
  '/',
  '/styles.css',
  '/app.js',
  '/manifest.json',
  '/icon-192x192.png',
  '/icon-512x512.png'
];

self.addEventListener('install', event => {
  event.waitUntil(
    caches.open(CACHE_NAME)
      .then(cache => {
        return cache.addAll(urlsToCache);
      })
  );
});

self.addEventListener('fetch', event => {
  event.respondWith(
    caches.match(event.request)
      .then(response => {
        return response || fetch(event.request);
      })
  );
});

7. Einrichten des Servers

server.js:

const express = require('express');
const path = require('path');

const app = express();
const PORT = process.env.PORT || 3000;

app.use(express.static(path.join(__dirname, 'public')));

app.listen(PORT, () => {
  console.log(`Server is running on http://localhost:${PORT}`);
});

Ausführen des Servers:

node server.js

8. Testen Sie Ihre PWA

  1. Öffnen Sie die App:

    • Navigieren Sie in Ihrem Browser zu http://localhost:3000.
  2. Servicemitarbeiter-Registrierung:

    • Öffnen Sie die Entwicklertools (F12 oder klicken Sie mit der rechten Maustaste und wählen Sie „Inspizieren“).
    • Gehen Sie zur Registerkarte „Bewerbung“.
    • Unter „Servicemitarbeiter“ sollten Sie Ihren registrierten Servicemitarbeiter sehen.
  3. Zum Startbildschirm hinzufügen:

    • Öffnen Sie auf einem mobilen Gerät Ihre PWA im Browser.
    • Sie sollten eine Aufforderung zum „Zum Startbildschirm hinzufügen“ sehen.

9. Best Practices für PWAs

Best Practices:

  • HTTPS verwenden: PWAs erfordern sichere Kontexte.
  • Bilder optimieren: Verwenden Sie reaktionsfähige Bilder und Lazy Loading.
  • Netzwerkanforderungen minimieren: Ressourcen effektiv zwischenspeichern.
  • Offline-Funktionalität sicherstellen: Bieten Sie sinnvolle Offline-Erlebnisse.

10. Fazit

Fassen Sie die wichtigsten behandelten Punkte zusammen:

  • Einführung in PWAs und ihre Vorteile.
  • Einrichten einer einfachen PWA mit Manifest, Service Worker und Caching.
  • Best Practices für den Aufbau robuster PWAs.

11. Zusätzliche Ressourcen

  • PWA-Dokumentation
  • Tutorials und Leitfäden zu fortgeschrittenen PWA-Themen.
  • Community-Foren und Support.
Freigabeerklärung Dieser Artikel ist abgedruckt unter: https://dev.to/suhaspalani/progressive-web-apps-pwas-3n8?1 Bei Verstößen wenden Sie sich bitte an [email protected], um ihn zu löschen
Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3