Tieni presente quanto segue:
- La visualizzazione degli elementi
<ruby>
è migliore con le interruzioni di riga. - Promise.try semplifica l'accodamento delle promesse.
- L'evento PointerEvent viene esteso per identificare in modo univoco più penne.
- E c'è molto altro.
Sono Adriana Jara. Diamo un'occhiata alle novità per gli sviluppatori in Chrome 128.
Interruzione di riga <ruby>
L'elemento <ruby>
migliora la presentazione del testo, in particolare per le lingue dell'Asia orientale. Ti consente di visualizzare annotazioni fonetiche o altre informazioni supplementari sopra o accanto al testo di base.
Un elemento ruby è costituito da due parti principali: la base ruby, ovvero il testo principale, e il testo ruby, ovvero il testo dell'annotazione, contrassegnati dall'elemento.
In precedenza, se un ruby-base o un ruby-text era più lungo di un'intera riga, veniva a capo singolarmente creando problemi di layout.
Ora il testo rubi da spezzare inserisce il testo dell'annotazione rubi a capo sopra il testo di base a capo, ottenendo un rendering del testo ideale.
Per esempi e ulteriori informazioni, consulta <ruby>
spezzato a riga e proprietà CSS ruby-align.
Promise.try
Promise.try
semplifica la gestione degli errori con le promesse. Esiste un pattern in cui hai una funzione, f
. Questa funzione può essere asincrona e restituire una promessa oppure no. Per utilizzare la semantica delle promesse per gestire gli errori in entrambi i casi, devi racchiudere la funzione in una promessa.
Un modo per farlo è con Promise.resolve().then(f)
, ma in questo caso f
verrebbe eseguito inutilmente in modo asincrono al successivo tick.
Per evitare questo problema, devi utilizzare new Promise(resolve => resolve(f()))
, che non è affatto ergonomico.
Promise.try
, è il modo semplice e diretto per ottenere lo stesso risultato. Ti consente di avviare una catena di promesse che intercetta tutti gli errori negli handler .catch
anziché dover gestire i flussi di eccezione sia sincroni che asincroni.
Per scoprire di più, consulta la documentazione di Promise.try
.
PointerEvent.deviceProperties per la creazione di inchiostri con più penne
Gli sviluppatori non avevano modo di distinguere tra due penne su un digitizer con inchiostro. L'attributo PointerEvent.pointerId esistente è implementato in modi diversi e non è sempre persistente per ogni tratto di inchiostro o interazione con lo schermo.
L'interfaccia PointerEvent
è ora estesa per includere un nuovo attributo: deviceProperties
. Contiene l'attributo uniqueId
, che rappresenta un identificatore univoco persistente per la sessione e isolato dal documento che uno sviluppatore può utilizzare in modo affidabile per identificare i singoli pennelli che interagiscono con la pagina.
Con questa modifica puoi, ad esempio, impostare colori o forme di penna specifici per ogni dispositivo che interagisce con il digitizer.
Scopri come iniziare a utilizzare gli eventi del cursore in Indicazioni per il futuro.
E tanto altro.
Ovviamente ce ne sono molti altri.
La proprietà CSS
zoom
è ora in linea con lo standard più recente.Gli errori di creazione e di rendering audio di
AudioContext
vengono ora segnalati tramiteAudioContext.onerror
.Il riquadro Animazioni di DevTools ora acquisisce le animazioni e puoi modificare
@keyframes
in tempo reale.
Leggi le note di rilascio complete.
Per approfondire
Sono riportati solo alcuni punti salienti. Consulta i seguenti link per altre modifiche in Chrome 128.
- Novità di Chrome DevTools (128)
- Aggiornamenti di ChromeStatus.com per Chrome 128
- Elenco delle modifiche al repository di origine di Chromium
- Calendario delle release di Chrome
Iscriviti
Per non perderti nessuna novità, iscriviti al canale YouTube di Chrome for Developers, e riceverai una notifica via email ogni volta che lanceremo un nuovo video.
Sono Adriana Jara e, non appena verrà rilasciato Chrome 128, sarò qui per raccontarti le novità di Chrome.