Pour ceux qui ne connaissent pas le monde du développement d’extensions Web, une tempête se prépare avec Chrome. Google cessera de prendre en charge la version 2 du manifeste, qui est celle que la grande majorité des extensions Web utilisent. La version 3 de Manifest comporte de nombreux changements, mais le plus gros changement est le passage des scripts d’arrière-plan statiques aux Service Workers. C’est… un énorme changement…
Les changements de la version 2 de Manifesto à la version 3 incluent :
- Passer d’un script d’arrière-plan persistant à un service worker qui peut mourir au bout de 5 minutes
- pas d’Utilisation
<iframe>
Autres éléments DOM ou API du service worker - Toutes les API sont désormais basées sur des promesses
- Restrictions de contenu d’un point de vue CSP
Une fonction souvent utilisée par les extensions Web consiste à exécuter des scripts à chaque nouveau chargement de page. Pour une extension Web comme MetaMask, nous devons fournir un window.ethereum
pour utiliser les dApps. Alors, comment faisons-nous cela avec la version 3 du manifeste ?
À partir de Chrome v102Les développeurs peuvent spécifier un fichier world
la valeur de la propriété isolated
ou alors main
(par page) pour les textes de contenu. Alors que les développeurs doivent spécifier content_scripts
en prolongement manifest.json
dossier main
La valeur ne fonctionne vraiment (en raison d’un bogue dans Chrome) que lorsque vous la spécifiez par programmation à partir du service worker :
await chrome.scripting.registerContentScripts([ { id: 'inpage', matches: ['http://*/*', 'https://*/*'], js: ['in-page.js'], runAt: 'document_start', world: 'MAIN', }, ]);
Dans l’exemple ci-dessus, in-page.js
Ils sont saisis et exécutés dans l’onglet de contenu principal chaque fois qu’une nouvelle page est chargée. c’est in-page.js
Groupes de fichiers window.ethereum
pour toutes les dApps à utiliser. Si le world
Il est undefined
ou alors isolated
Le script continuera à s’exécuter, mais il sera exécuté dans un environnement isolé.
Faire Manifest v3 demande beaucoup d’efforts, alors embrassez votre développeur de plugins le plus proche. Il existe de nombreux changements structurels énormes et surmonter ces changements est une poussée brutale !
5 API HTML5 dont vous ignoriez l’existence
Lorsque vous dites ou lisez « HTML5 », vous vous attendez à moitié à ce que des danseurs et des licornes queer entrent dans la pièce au son de « I’m Hot I Know It ». Pouvez-vous nous blâmer cependant? Nous avons vu les API de base stagner pendant si longtemps que la fonctionnalité de base…
Conseils pour démarrer avec les bitcoins et les crypto-monnaies
Certaines des expériences les plus enrichissantes de ma vie, à la fois financièrement et logiquement, ont été l’achat et la gestion de crypto-monnaies telles que Bitcoin, Litecoin et Ethereum. Comme pour apprendre toute autre nouvelle technologie, j’ai fait des erreurs de débutant en cours de route, mais j’ai appris quelques bonnes pratiques en cours de route. profitable…
Arrière-plans multiples avec CSS
Quiconque travaille dans le domaine du développement Web depuis plus de 5 ans sait qu’il existe certaines fonctionnalités que nous aurions dû avoir il y a de nombreuses années. L’une de ces caractéristiques est Espace réservé HTML5; Nous avons utilisé des remplisseurs JavaScript pendant une décennie avant l’arrivée de l’espace réservé…
Ligne révisée
Lorsque j’ai créé des sites Web pour des clients, remettre le design initial était l’une des nombreuses choses qui me frustraient. Il en sera toujours ainsi : travaillez dur pour intégrer les idées du client et imaginez un superbe design. Créer ledit design, en utilisant le script Lorem Ipsum, envoyer le concept de design initial au client…