In Chrome 76 abbiamo aggiunto il supporto per:
prefers-color-scheme
, che consente di applicare la modalità Buio ai siti web.- Un pulsante di installazione nell'omnibox per semplificare l'installazione delle Progressive Web App su computer.
- Impedire la visualizzazione della mini-infobar nelle app web progressive sui dispositivi mobili.
- Aggiornamenti più frequenti dei WebAPK.
- E molto altro.
Sono Pete LePage. Diamo un'occhiata alle novità per gli sviluppatori in Chrome 76.
Pulsante di installazione della omnibox PWA
In Chrome 76, stiamo semplificando l'installazione delle app web progressive su computer aggiungendo un pulsante di installazione alla barra degli indirizzi, a volte chiamata omnibox.
Se il tuo sito soddisfa i criteri di installabilità delle app web progressive, Chrome mostrerà un pulsante di installazione nell'omnibox per indicare all'utente che la tua PWA può essere installata. Se l'utente fa clic sul pulsante di installazione, è sostanzialmente
come chiamare prompt()
per l'evento beforeinstallprompt
;
viene visualizzata la finestra di dialogo di installazione, che consente all'utente di installare più facilmente la PWA.
Per informazioni dettagliate, consulta Installazione dalla barra degli indirizzi per le app web progressive su computer.
Maggiore controllo sulla mini barra delle informazioni delle PWA
Sui dispositivi mobili, Chrome mostra la mini barra informativa la prima volta che un utente visita il tuo sito se soddisfa i criteri di installabilità delle app web progressive. Ci risulta che vorresti poter impedire la visualizzazione della mini barra informativa e fornire invece la tua promozione di installazione.
A partire da Chrome 76, la chiamata a preventDefault()
sull'evento beforeinstallprompt
impedirà la visualizzazione della mini barra delle informazioni.
window.addEventListener('beforeinstallprompt', (e) => {
// Don't show mini-infobar
e.preventDefault();
// Stash the event so it can be triggered later.
deferredPrompt = e;
// Update UI to promote PWA installation
pwaInstallAvailable(true);
});
Assicurati di aggiornare l'UI per far sapere agli utenti che la tua PWA può essere installata. Dai un'occhiata ai Pattern per promuovere l'installazione di PWA per le nostre best practice consigliate per promuovere l'installazione delle tue app web progressive.
Aggiornamenti più rapidi dei WebAPK
Quando un'app web progressiva è installata su Android, Chrome richiede e installa automaticamente un APK web. Dopo l'installazione, Chrome controlla periodicamente se il file manifest dell'app web è cambiato, ad esempio se hai aggiornato le icone, i colori o il nome dell'app, per verificare se è necessario un nuovo WebAPK.
A partire da Chrome 76, Chrome controllerà il manifest più spesso, ogni giorno, anziché ogni tre giorni. Se una delle proprietà chiave è stata modificata, Chrome richiederà e installerà un nuovo WebAPK, assicurandosi che il titolo, le icone e altre proprietà siano aggiornati.
Per informazioni dettagliate, consulta Aggiornare più di frequente i WebAPK.
Modalità Buio
Molti sistemi operativi ora supportano la modalità Buio, o tema scuro.
La query media prefers-color-scheme
ti consente di modificare l'aspetto del tuo sito in base alla modalità preferita dall'utente.
@media (prefers-color-scheme: dark) {
body {
background-color: black;
color: white;
}
}
Tom ha scritto un ottimo articolo Ciao oscurità, mio vecchio amico su web.dev con tutto ciò che devi sapere, oltre a suggerimenti per progettare i fogli di stile in modo da supportare sia una modalità Luce che Buio.
E tanto altro.
Queste sono solo alcune delle modifiche in Chrome 76 per gli sviluppatori, ma ce ne sono molte altre.
Promise.allSettled()
Personalmente, sono davvero entusiasta di Promise.allSettled()
. È simile a
Promise.all()
, tranne per il fatto che attende che tutte le promesse siano state risolte prima di
rientrare.
const promises = [
fetch('/api-call-1'),
fetch('/api-call-2'),
fetch('/api-call-3'),
];
// Imagine some of these requests fail, and some succeed.
await Promise.allSettled(promises);
// All API calls have finished (either failed or succeeded).
La lettura dei blob è più facile
I file Blob
sono più facili da leggere grazie a tre nuovi metodi: text()
, arrayBuffer()
e stream()
; ciò significa che non dobbiamo più creare un wrapper attorno
al lettore di file.
// New easier way
const text = await blob.text();
const aBuff = await blob.arrayBuffer();
const stream = await blob.stream();
// Old, wrapped reader
return new Promise((resolve) => {
const reader = new FileReader();
reader.addEventListener('loadend', (e) => {
const text = e.srcElement.result;
resolve(text);
});
reader.readAsText(file);
});
Supporto delle immagini nell'API Async Clipboard
Inoltre, abbiamo aggiunto il supporto per le immagini all'API Asynchronous Clipboard, in modo da semplificare la copia e incolla in modo programmatico delle immagini.
Per approfondire
Questa pagina illustra solo alcuni dei punti salienti. Per altre modifiche in Chrome 76, consulta i link di seguito.
- Novità di Chrome DevTools (76)
- Ritiro e rimozione di funzionalità in Chrome 76
- Aggiornamenti di ChromeStatus.com per Chrome 76
- Novità di JavaScript in Chrome 76
- Elenco delle modifiche al repository di origine di Chromium
Iscriviti
Se vuoi rimanere al passo con i nostri video, iscriviti al nostro canale YouTube per sviluppatori di Chrome e riceverai una notifica via email ogni volta che lanceremo un nuovo video.
Sono Pete LePage e, non appena verrà rilasciata la versione 77 di Chrome, sarò qui per raccontarti le novità del browser.