𝙾𝚛𝚒𝚘𝚗's banner
𝙾𝚛𝚒𝚘𝚗's profile picture

𝙾𝚛𝚒𝚘𝚗

@lenfant_noir08,536 subscribers

As salāmu ‘aleyka Yā Seydi Yā Rasullal’Lāh ﷺ Talibé Cheikh 🤲🏾🕊️Madrista🌹 Ingénieur en transmission de données, sécurité & IA | compte restreint @Haqeemoff

Shorts

Saga yi en dm svp 😭😂✋🏾

Saga yi en dm svp 😭😂✋🏾

133,643 views

Une seule ligne de code pour briser définitivement le mur entre le Web et le Mobile. Tu tombes sur un composant ultra stylé (par exemple une map 3D type Cobe en WebGL)… et là, c’est le drame : il n’existe que sur le web. Dans cette situation, plusieurs options s’offrent à toi : → chercher un wrapper React Native (souvent non maintenu… quand il existe) → passer des semaines à le recréer from scratch en React Native Au final tu te rabats sur la solution web… avec une WebView un peu bancale qui s’intègre mal au reste de l’app. Une solution existe pourtant: Expo DOM. Le concept est simple, mais radical: tu ajoutes une seule ligne au composant web que tu veux intégrer ("use dom"), et le tour est joué. Sur le papier, ça paraît incroyable. Mais ce qui se passe sous le capot est encore plus intéressant. La directive "use memo" n’est pas une simple commande syntaxique. C'est un marqueur sémantique destiné à Metro, le bundler de React Native Quand un fichier contient cette directive, Metro change complètement de comportement pour traiter le module et ses dépendances non pas comme des instructions destinées au moteur Hermes pour le rendu natif, mais comme un composant React DOM rendu via le moteur Javascript V8 dans une Webview optimisé. Côté DX, le composant partage la même configuration que le reste de l’app et bénéficie des mêmes fonctionnalités notamment le Fast Refresh. En production, Expo Dom exporte ces composants sous forme de page web statiques embarqués directement dans le binaire natif, garantissant: → un fonctionnement offline → une synchronisation parfaite avec le code natif Pour l'utilisateur final, l'intégration est si fluide qu'il est souvent impossible de distinguer le composant web du reste de l'interface native. Le web devient le centre de l’écosystème, effaçant de plus en plus la frontière entre web et natif.

Une seule ligne de code pour briser définitivement le mur entre le Web et le Mobile. Tu tombes sur un composant ultra stylé (par exemple une map 3D type Cobe en WebGL)… et là, c’est le drame : il n’existe que sur le web. Dans cette situation, plusieurs options s’offrent à toi : → chercher un wrapper React Native (souvent non maintenu… quand il existe) → passer des semaines à le recréer from scratch en React Native Au final tu te rabats sur la solution web… avec une WebView un peu bancale qui s’intègre mal au reste de l’app. Une solution existe pourtant: Expo DOM. Le concept est simple, mais radical: tu ajoutes une seule ligne au composant web que tu veux intégrer ("use dom"), et le tour est joué. Sur le papier, ça paraît incroyable. Mais ce qui se passe sous le capot est encore plus intéressant. La directive "use memo" n’est pas une simple commande syntaxique. C'est un marqueur sémantique destiné à Metro, le bundler de React Native Quand un fichier contient cette directive, Metro change complètement de comportement pour traiter le module et ses dépendances non pas comme des instructions destinées au moteur Hermes pour le rendu natif, mais comme un composant React DOM rendu via le moteur Javascript V8 dans une Webview optimisé. Côté DX, le composant partage la même configuration que le reste de l’app et bénéficie des mêmes fonctionnalités notamment le Fast Refresh. En production, Expo Dom exporte ces composants sous forme de page web statiques embarqués directement dans le binaire natif, garantissant: → un fonctionnement offline → une synchronisation parfaite avec le code natif Pour l'utilisateur final, l'intégration est si fluide qu'il est souvent impossible de distinguer le composant web du reste de l'interface native. Le web devient le centre de l’écosystème, effaçant de plus en plus la frontière entre web et natif.

20,668 views

Videos

lenfant_noir0's profile picture

Tout est parfait 😍

𝙾𝚛𝚒𝚘𝚗

1,101,213 views • 8 months ago