<?xml version="1.0" encoding="ISO-8859-1"?>

<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/">
	<channel>
		<title><![CDATA[Forum du club des développeurs et IT Pro - Bibliothèques & Frameworks]]></title>
		<link>https://www.developpez.net/forums/</link>
		<description>Forum sur les bibliothèques et frameworks JavaScript (jQuery, HighCharts, Angular, React, etc.). Avant de poster : Cours et FAQ des Frameworks JavaScript.</description>
		<language>fr</language>
		<lastBuildDate>Tue, 02 Jun 2026 01:57:02 GMT</lastBuildDate>
		<generator>vBulletin</generator>
		<ttl>15</ttl>
		<image>
			<url>https://forum.developpez.be/images/misc/rss.png</url>
			<title><![CDATA[Forum du club des développeurs et IT Pro - Bibliothèques & Frameworks]]></title>
			<link>https://www.developpez.net/forums/</link>
		</image>
		<item>
			<title><![CDATA[Next.js 16.2 est lancé avec un rendu et un démarrage plus rapides, une page d'erreur repensée]]></title>
			<link>https://www.developpez.net/forums/showthread.php?t=2182817&amp;goto=newpost</link>
			<pubDate>Mon, 23 Mar 2026 08:10:56 GMT</pubDate>
			<description>*Next.js 16.2 est lancé avec...</description>
			<content:encoded><![CDATA[<div><b><font size="4">Next.js 16.2 est lancé avec un rendu et un démarrage plus rapides, une page d'erreur repensée, une mise à jour majeure garantissant un taux de réussite de 100 % pour les agents IA</font></b><br />
<br />
<b>Next.js 16.2 est désormais disponible, apportant des améliorations majeures au flux de travail des développeurs et aux performances des sites. Le temps de démarrage de <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block"><span style="color: #800000;">localhost</span>:<span style="color: #cc66cc;">3000</span></span> pendant le développement est désormais environ 87 % plus rapide que dans la version 16.1 lors de l'utilisation de l'application par défaut, grâce à des améliorations significatives du processus <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">next dev</span>. Par ailleurs, la désérialisation de la charge utile des composants serveur est désormais jusqu’à 350 % plus rapide, ce qui se traduit par des gains de vitesse de rendu côté serveur compris entre 25 % et 60 % en conditions réelles, selon la charge utile.</b><br />
<br />
Next.js est un framework open source de développement web full-stack créé par la société privée Vercel, qui permet de développer des applications web basées sur React avec rendu côté serveur et rendu statique. La documentation React mentionne Next.js parmi les « chaînes d'outils recommandées », le conseillant aux développeurs lorsqu'ils « créent un site web rendu côté serveur avec Node.js ». Alors que les applications React traditionnelles ne peuvent afficher leur contenu que dans le navigateur côté client, Next.js étend cette fonctionnalité pour inclure les applications rendues côté serveur.<br />
<br />
Next.js 16.2 est désormais disponible, apportant des améliorations majeures au flux de travail des développeurs et aux performances des sites. Le temps de démarrage de <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block"><span style="color: #800000;">localhost</span>:<span style="color: #cc66cc;">3000</span></span> pendant le développement est désormais environ 87 % plus rapide que dans la version 16.1 lors de l'utilisation de l'application par défaut, grâce à des améliorations significatives du processus <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">next dev</span>.<br />
<br />
Par ailleurs, la désérialisation de la charge utile des composants serveur est désormais jusqu’à 350 % plus rapide, ce qui se traduit par des gains de vitesse de rendu côté serveur compris entre 25 % et 60 % en conditions réelles, selon la charge utile. Si les performances sont au cœur de cette mise à jour, celle-ci améliore également la gestion des erreurs : les pages d'erreur en production bénéficient d'un nouveau design, les chaînes <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">Error.cause</span> s'affichent dans la fenêtre contextuelle d'erreur, et les incohérences d'hydratation sont désormais clairement identifiées afin de distinguer le contenu rendu par le serveur de celui rendu par le client.<br />
<br />
Pour améliorer le débogage et la transparence pendant le développement, Next.js consigne désormais dans le terminal le nom, les arguments, le temps d'exécution et le fichier source de chaque fonction serveur. S'appuyant sur les changements récents, la prise en charge du débogueur Node.js s'étend au-delà du développement ; les développeurs peuvent désormais attacher le débogueur dans les environnements de production via <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">next start --inspect</span>.<br />
<br />
Parmi les autres mises à jour, citons une nouvelle propriété <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">transitionTypes</span> pour le composant ``, une API Adapters stable pour la personnalisation de la compilation, des améliorations notables apportées à <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">ImageResponse</span> et la gestion automatique de plusieurs fichiers d'icônes ayant le même nom de base mais des extensions différentes. Cette version apporte également diverses améliorations supplémentaires et corrections de bogues.<br />
<br />
<div style="text-align: center;">
<div class="video-container"><iframe class="restrain" title="YouTube video player" width="560" height="315" allowfullscreen src="//www.youtube.com/embed/PXq6awYzfT8?wmode=transparent&amp;fs=1" frameborder="0"></iframe></div>
</div><br />
Voici la présentation de Next.js 16.2 :<br />
<br />
<b><font size="3">Présentation de Next.js 16.2</font></b><br />
<br />
Next.js 16.2 apporte des améliorations en termes de performances, un débogage optimisé, des améliorations pour les agents, ainsi que plus de 200 corrections et améliorations pour Turbopack.<br />
<br />
<b>Temps de mise à disposition de l'URL plus rapide en développement</b><br />
<br />
Nous avons considérablement réduit le temps nécessaire avant que <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block"><span style="color: #800000;">localhost</span>:<span style="color: #cc66cc;">3000</span></span> ne soit prêt pour <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">next dev</span>. Sur la même machine et pour le même projet, le démarrage est environ 87 % plus rapide par rapport à Next.js 16.1 sur l'application par défaut.<br />
<br />
<b>Rendu plus rapide</b><br />
<br />
Nous avons apporté une modification à React qui accélère la désérialisation de la charge utile des composants serveur jusqu'à 350 %. L'implémentation précédente utilisait un callback reviver <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block"><span style="color: #0080ff;">JSON</span>.parse</span>, qui franchissait la frontière C++/JavaScript dans V8 pour chaque paire clé-valeur du JSON analysé. Même un reviver trivial sans opération rend <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block"><span style="color: #0080ff;">JSON</span>.parse</span> environ 4 fois plus lent que sans reviver.<br />
<br />
La nouvelle approche utilise un processus en deux étapes : un simple <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block"><span style="color: #0080ff;">JSON</span>.<span style="color: #0080ff;">parse</span><span class="br0">&#40;</span><span class="br0">&#41;</span></span> suivi d'une exploration récursive en JavaScript pur. Cela élimine la surcharge liée au franchissement de la frontière et ajoute des optimisations telles que le court-circuitage des chaînes de caractères simples qui ne nécessitent pas de transformation.<br />
<br />
Dans les applications Next.js réelles, cela se traduit par un rendu HTML 25 % à 60 % plus rapide, en fonction de la taille de la charge utile RSC.<br />
<br />
<div style="text-align: center;"><img src="https://www.developpez.net/forums/attachments/p675177d1774255952/javascript/bibliotheques-frameworks/next-js-16-2-lance-rendu-demarrage-plus-rapides-page-derreur-repensee/1.jpg/" border="0" alt="Nom : 1.jpg
Affichages : 4697
Taille : 57,5 Ko"  style="float: CONFIG" /></div><br />
<b>Nouvelle page d'erreur par défaut</b><br />
<br />
La page d'erreur par défaut affichée en production a été repensée. Lorsque votre application rencontre une erreur et que vous n'avez pas défini de fichier <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">global-error.tsx</span> ou <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">error.tsx</span> personnalisé, Next.js affiche une page de secours intégrée. Cette page de secours a été mise à jour avec un design plus épuré et plus moderne.<br />
<br />
<div style="text-align: center;"><img src="https://www.developpez.net/forums/attachments/p675178d1774255960/javascript/bibliotheques-frameworks/next-js-16-2-lance-rendu-demarrage-plus-rapides-page-derreur-repensee/2.jpg/" border="0" alt="Nom : 2.jpg
Affichages : 247
Taille : 19,6 Ko"  style="float: CONFIG" /></div><br />
<b>Journalisation des fonctions serveur</b><br />
<br />
Next.js consigne désormais l'exécution des fonctions serveur dans le terminal pendant le développement. Chaque entrée de journal indique le nom de la fonction, ses arguments, son temps d'exécution et le fichier dans lequel elle est définie.<br />
<br />
<div style="text-align: center;"><img src="https://www.developpez.net/forums/attachments/p675179d1774255974/javascript/bibliotheques-frameworks/next-js-16-2-lance-rendu-demarrage-plus-rapides-page-derreur-repensee/3.jpg/" border="0" alt="Nom : 3.jpg
Affichages : 244
Taille : 34,6 Ko"  style="float: CONFIG" /></div><br />
<b>Indicateur de différence d'hydratation</b><br />
<br />
Lorsqu'une divergence d'hydratation se produit, la fenêtre d'erreur superposée indique désormais clairement quel contenu provient du serveur et quel contenu provient du client. La différence utilise une légende <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">+ Client</span> / <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">- Server</span>, ce qui permet de voir immédiatement ce qui diverge.<br />
<br />
<div style="text-align: center;"><img src="https://www.developpez.net/forums/attachments/p675180d1774255996/javascript/bibliotheques-frameworks/next-js-16-2-lance-rendu-demarrage-plus-rapides-page-derreur-repensee/4.jpg/" border="0" alt="Nom : 4.jpg
Affichages : 241
Taille : 25,4 Ko"  style="float: CONFIG" /></div><br />
<b><span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">--inspect</span> pour <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">next start</span>.</b><br />
<br />
Next.js 16.1 a introduit next dev --inspect pour connecter le débogueur Node.js pendant le développement. Dans la version 16.2, cette fonctionnalité s'étend à next start, vous permettant de connecter un débogueur Node.js à votre serveur de production.<br />
<br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code">next start --inspect</code><hr />
</div><br />
<br />
<br />
Cela est utile pour déboguer des problèmes ou profiler l'utilisation du CPU et de la mémoire.<br />
<br />
<b>Propriété <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">transitionTypes</span> pour <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">next/<span style="color: #0080ff;">link</span>/</span>.</b><br />
<br />
Le composant <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">&lt;Link&gt;</span> accepte désormais une propriété <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">transitionTypes</span> — un tableau de chaînes de caractères qui spécifie les transitions de vue à appliquer lors de la navigation. Chaque type est transmis à <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">React.addTransitionType</span> pendant la transition de navigation, ce qui vous permet de déclencher différentes animations en fonction de la direction ou du contexte de la navigation.<br />
<br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="26"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br /></div></td><td valign="top"><pre style="margin: 0">&lt;Link href=<span style="color: #FF0000;">&quot;/about&quot;</span> transitionTypes=<span class="br0">&#123;</span><span class="br0">&#91;</span><span style="color: #FF0000;">'slide'</span><span class="br0">&#93;</span><span class="br0">&#125;</span>&gt;
  About
&lt;/Link&gt;</pre></td></tr></table></code><hr />
</div><br />
<br />
<br />
Cette fonctionnalité n'est prise en charge que dans l'App Router, car le Pages Router n'utilise pas les transitions React pour la navigation. La propriété <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">transitionTypes</span> sur les liens du Pages Router est ignorée de manière silencieuse, ce qui permet aux composants de lien partagés de fonctionner sur les deux routeurs.<br />
<br />
<b><span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">ImageResponse</span> plus rapide</b><br />
<br />
<span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">ImageResponse</span> a été mis à jour avec des améliorations significatives :<br />
<br />
- <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">ImageResponse</span> deux fois plus rapide pour les images basiques, jusqu'à 20 fois plus rapide pour les images complexes<br />
<br />
- Couverture CSS et SVG améliorée, incluant la prise en charge des variables CSS en ligne, <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">text-indent</span>, <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">text-decoration-skip-ink</span>, <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">box-sizing</span>, <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block"><span style="color: #800000;">display</span>: contents</span>, <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block"><span style="color: #800000;">position</span>: <span style="color: #0000ff;">static</span></span>, et les valeurs en pourcentage pour <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">gap</span>.<br />
<br />
- Police par défaut changée de Noto Sans à Geist Sans<br />
<br />
<b>Causes des erreurs dans la fenêtre contextuelle de développement<br />
</b><br />
<br />
La fenêtre contextuelle d'erreur affiche désormais les chaînes <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">Error.cause</span>, ce qui facilite le débogage des erreurs qui en contiennent d'autres. Les causes sont présentées sous forme de liste plate sous l'erreur de niveau supérieur, sur un maximum de 5 niveaux de profondeur.<br />
<br />
<div style="text-align: center;"><img src="https://www.developpez.net/forums/attachments/p675181d1774256011/javascript/bibliotheques-frameworks/next-js-16-2-lance-rendu-demarrage-plus-rapides-page-derreur-repensee/5.jpg/" border="0" alt="Nom : 5.jpg
Affichages : 240
Taille : 33,4 Ko"  style="float: CONFIG" /></div><br />
<b>Adaptateurs</b><br />
<br />
Les adaptateurs sont désormais disponibles en version stable. Il s'agit d'une nouvelle API qui permet aux plateformes de personnaliser le processus de compilation.<br />
<br />
Cela est utile pour les plateformes de déploiement ou les intégrations de compilation personnalisées qui doivent modifier la configuration de Next.js ou traiter le résultat de la compilation.<br />
<br />
Nous partagerons un aperçu plus détaillé des adaptateurs la semaine prochaine.<br />
<br />
<b>Formats d'icônes multiples</b><br />
<br />
Les fichiers d'icônes multiples portant le même nom de base mais des extensions différentes sont désormais gérés automatiquement dans le répertoire de votre application (par exemple, <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">icon.png</span> et <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">icon.svg</span>). Cela est utile pour la prise en charge de la solution de secours dans les navigateurs. Les navigateurs modernes peuvent utiliser des icônes SVG tandis que les navigateurs plus anciens se rabattent sur le format PNG. Les deux formats sont rendus sous forme de balises <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">&lt;link&gt;</span> distinctes.<br />
<br />
<b>Source</b> : <a rel="nofollow" href="https://nextjs.org/blog/next-16-2" target="_blank">Annonce de Next.js 16.2</a><br />
<br />
<b>Et vous ?</b><br />
<br />
:fleche: Pensez-vous que cette version est crédible ou pertinente ?<br />
:fleche: Quel est votre avis sur le sujet ?<br />
<br />
<b>Voir aussi :</b><br />
<br />
:fleche: <a href="https://javascript.developpez.com/actu/378654/Next-js-16-1-le-framework-open-source-de-developpement-web-full-stack-est-desormais-disponible-avec-la-mise-en-cache-du-systeme-de-fichiers-Turbopack-un-analyseur-de-bundle-Next-js-et-bien-plus-encore/" target="_blank">Next.js 16.1, le framework open source de développement web full-stack, est désormais disponible avec la mise en cache du système de fichiers Turbopack, un analyseur de bundle Next.js et bien plus encore</a><br />
<br />
:fleche: <a href="https://javascript.developpez.com/actu/380633/Comment-nous-avons-reconstruit-Next-js-avec-l-IA-en-une-semaine-l-interface-API-Next-js-vinext-permet-de-creer-des-applications-de-production-jusqu-a-4-fois-plus-rapidement-par-Steve-Faulkner/" target="_blank">Comment nous avons reconstruit Next.js avec l'IA en une semaine, l'interface API Next.js vinext permet de créer des applications de production jusqu'à 4 fois plus rapidement, par Steve Faulkner</a><br />
<br />
:fleche: <a href="https://javascript.developpez.com/actu/340306/Etat-de-JavaScript-2022-React-reste-le-framework-front-end-dominant-mais-est-en-perte-de-vitesse-cote-satisfaction-jQuery-est-la-troisieme-bibliotheque-la-plus-utilisee/" target="_blank">État de JavaScript 2022 : React reste le framework front-end dominant mais est en perte de vitesse côté satisfaction, JQuery est la troisième bibliothèque la plus utilisée</a></div>


	<div style="padding:10px">

	

	
		<fieldset class="fieldset">
			<legend>Images attachées</legend>
				<div style="padding:10px">
				<img class="attach" src="https://www.developpez.net/forums/attachments/p675177d1774255952/javascript/bibliotheques-frameworks/next-js-16-2-lance-rendu-demarrage-plus-rapides-page-derreur-repensee/1.jpg/" alt="" />&nbsp;<img class="attach" src="https://www.developpez.net/forums/attachments/p675178d1774255960/javascript/bibliotheques-frameworks/next-js-16-2-lance-rendu-demarrage-plus-rapides-page-derreur-repensee/2.jpg/" alt="" />&nbsp;<img class="attach" src="https://www.developpez.net/forums/attachments/p675179d1774255974/javascript/bibliotheques-frameworks/next-js-16-2-lance-rendu-demarrage-plus-rapides-page-derreur-repensee/3.jpg/" alt="" />&nbsp;<img class="attach" src="https://www.developpez.net/forums/attachments/p675180d1774255996/javascript/bibliotheques-frameworks/next-js-16-2-lance-rendu-demarrage-plus-rapides-page-derreur-repensee/4.jpg/" alt="" />&nbsp;<img class="attach" src="https://www.developpez.net/forums/attachments/p675181d1774256011/javascript/bibliotheques-frameworks/next-js-16-2-lance-rendu-demarrage-plus-rapides-page-derreur-repensee/5.jpg/" alt="" />&nbsp;
			</div>
		</fieldset>
	

	

	

	</div>
]]></content:encoded>
			<category domain="https://www.developpez.net/forums/f1187/javascript/bibliotheques-frameworks/"><![CDATA[Bibliothèques & Frameworks]]></category>
			<dc:creator>Jade Emy</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/d2182817/javascript/bibliotheques-frameworks/next-js-16-2-lance-rendu-demarrage-plus-rapides-page-d-erreur-repensee/</guid>
		</item>
		<item>
			<title>Introduction à libmodulor</title>
			<link>https://www.developpez.net/forums/showthread.php?t=2180820&amp;goto=newpost</link>
			<pubDate>Sat, 06 Dec 2025 09:45:06 GMT</pubDate>
			<description>Bonjour à tous, 
 
Je...</description>
			<content:encoded><![CDATA[<div>Bonjour à tous,<br />
<br />
Je souhaiterais vous présenter <a rel="nofollow" href="https://libmodulor.c100k.eu" target="_blank">libmodulor,</a> une petite bibiliothèque sur laquelle je travaille sur mon temps libre.<br />
Elle permet de créer des applications TypeScript &quot;platform-agnostic&quot;. C'est-à-dire qu'elle permet de définir un socle applicatif commun, que l'on peut réutiliser sur plusieurs plateformes.<br />
<br />
Ça fonctionne suivant quatre couches (<i>non, attendez, ne fuyez pas tout de suite</i> :mouarf:) :<br />
<br />
- UseCase : c'est une fonctionnalité. Exemples : SignIn, CreatePost, TransferAccount, InviteContacts...<br />
- App : c'est une groupement logique de use cases, partageant un manifeste et des traductions communes. Exemples : Auth, Accounting, CMS...<br />
- Product : c'est un grouepement logique d'apps, faisant un produit final. Exemples : GitHub, Facebook, LinkedIn, Airbnb...<br />
- Target : c'est le plateforme &quot;technique&quot; qui expose le produit. Exemples : server-node-express, server-node-hono, server-nextjs, cli-node, spa-react, react-native...<br />
<br />
Comme vous pouvez le voir, ce n'est pas un énième framework JavaScript. libmodulor est full-stack et ne fait aucun choix sur les outils techniques.<br />
Vous êtes libres de choisir express, hono, fastify... (côté server) et react, angular, vue... (côté client).<br />
libmodulor offre juste des adaptateurs par défaut, principalement parce que ce sont ceux que j'utilise régulièrement (express, hono, react, react-native).<br />
<br />
La bibiothèque offre également du testing automatique ainsi que de la génération de doc automatique, entre autres.<br />
<br />
Comme vous pouvez le voir, ce n'est pas &quot;simple&quot; et ça n'est donc pas destiné aux applications &quot;simples&quot;.<br />
Mais plus aux applications métier que l'on voudrait construire en TypeScript, nécessitant un cadre très bien défini.<br />
D'autant que libmodulor est entièrement basée sur l'injection de dépendances afin d'assurer une architecture &quot;platform-agnostic&quot;.<br />
<br />
Voilà je suis preneur de vos retours constructifs, bug, améliorations. Il y a encore énormément à faire :).<br />
Et bien sûr je me ferai un plaisir de vous aider si vous bloquez sur quelque chose.<br />
<br />
Pour en savoir plus :<br />
<br />
- Documentation : <a rel="nofollow" href="https://libmodulor.c100k.eu" target="_blank">https://libmodulor.c100k.eu</a><br />
- GitHub : <a rel="nofollow" href="https://github.com/c100k/libmodulor" target="_blank">https://github.com/c100k/libmodulor</a><br />
- Playground : <a rel="nofollow" href="https://libmodulor.c100k.eu/docs/examples/Playground" target="_blank">https://libmodulor.c100k.eu/docs/examples/Playground</a></div>

]]></content:encoded>
			<category domain="https://www.developpez.net/forums/f1187/javascript/bibliotheques-frameworks/"><![CDATA[Bibliothèques & Frameworks]]></category>
			<dc:creator>CHAF007</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/d2180820/javascript/bibliotheques-frameworks/introduction-libmodulor/</guid>
		</item>
		<item>
			<title>hightchart conflit avec prototype.js</title>
			<link>https://www.developpez.net/forums/showthread.php?t=2178072&amp;goto=newpost</link>
			<pubDate>Tue, 15 Jul 2025 14:37:06 GMT</pubDate>
			<description>Hello à tous, 
 
Je suis sur...</description>
			<content:encoded><![CDATA[<div>Hello à tous,<br />
<br />
Je suis sur un projet legacy avec jquery, prototype.js et highcharts<br />
Le problème c'est que je suis une partie du projet ou dès que j'initialise highcharts.<br />
J'ai testé tous que j'ai pu trouver avec jquery des onload ... <br />
J'ai d'autres pages ou c'est nickel.<br />
<br />
Pourriez vous m'aider ou m'aiguiller pour trouver une solution svp ?<br />
<br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="33"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br /></div></td><td valign="top"><pre style="margin: 0"><span style="color: #0000ff;">prototype</span>.<span style="color: #800000;">js</span>:<span style="color: #cc66cc;">1</span> Uncaught <span style="color: #800000;">TypeError</span>: <span style="color: #0000ff;">this</span>.each <span style="color: #0000ff;">is</span> not a <span style="color: #0000ff;">function</span>
    at HTMLCollection.collect <span class="br0">&#40;</span><span style="color: #0000ff;">prototype</span>.<span style="color: #800000;">js</span>:<span style="color: #cc66cc;">1</span>:<span style="color: #cc66cc;">10990</span><span class="br0">&#41;</span>
    at a0.getContainerBox <span class="br0">&#40;</span>highcharts.<span style="color: #800000;">js</span>:<span style="color: #cc66cc;">9</span>:<span style="color: #cc66cc;">205387</span><span class="br0">&#41;</span>
    at a0.getChartSize <span class="br0">&#40;</span>highcharts.<span style="color: #800000;">js</span>:<span style="color: #cc66cc;">9</span>:<span style="color: #cc66cc;">205718</span><span class="br0">&#41;</span>
    at a0.getContainer <span class="br0">&#40;</span>highcharts.<span style="color: #800000;">js</span>:<span style="color: #cc66cc;">9</span>:<span style="color: #cc66cc;">206909</span><span class="br0">&#41;</span>
    at a0.firstRender <span class="br0">&#40;</span>highcharts.<span style="color: #800000;">js</span>:<span style="color: #cc66cc;">9</span>:<span style="color: #cc66cc;">215377</span><span class="br0">&#41;</span>
    at a0.&lt;anonymous&gt; <span class="br0">&#40;</span>highcharts.<span style="color: #800000;">js</span>:<span style="color: #cc66cc;">9</span>:<span style="color: #cc66cc;">199505</span><span class="br0">&#41;</span>
    at U <span class="br0">&#40;</span>highcharts.<span style="color: #800000;">js</span>:<span style="color: #cc66cc;">9</span>:<span style="color: #cc66cc;">2580</span><span class="br0">&#41;</span>
    at a0.init <span class="br0">&#40;</span>highcharts.<span style="color: #800000;">js</span>:<span style="color: #cc66cc;">9</span>:<span style="color: #cc66cc;">198727</span><span class="br0">&#41;</span>
    at <span style="color: #0000ff;">new</span> a0 <span class="br0">&#40;</span>highcharts.<span style="color: #800000;">js</span>:<span style="color: #cc66cc;">9</span>:<span style="color: #cc66cc;">198437</span><span class="br0">&#41;</span>
    at T.jQuery.T.jQuery.fn.highcharts <span class="br0">&#40;</span>highcharts.<span style="color: #800000;">js</span>:<span style="color: #cc66cc;">9</span>:<span style="color: #cc66cc;">2818</span><span class="br0">&#41;</span></pre></td></tr></table></code><hr />
</div><br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="33"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br />28<br />29<br />30<br />31<br />32<br />33<br />34<br />35<br />36<br />37<br />38<br />39<br />40<br />41<br />42<br />43<br />44<br />45<br />46<br />47<br />48<br />49<br />50<br />51<br />52<br />53<br />54<br />55<br />56<br />57<br />58<br />59<br />60<br />61<br />62<br />63<br />64<br />65<br />66<br />67<br />68<br />69<br /></div></td><td valign="top"><pre style="margin: 0"><span style="color: #0080ff;">jQuery</span><span class="br0">&#40;</span><span style="color: #0000ff;">function</span> <span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span>
&nbsp;
    <span style="color: #0080ff;">jQuery</span><span class="br0">&#40;</span><span style="color: #FF0000;">'#charts'</span><span class="br0">&#41;</span>.<span style="color: #0080ff;">highcharts</span><span class="br0">&#40;</span><span class="br0">&#123;</span>
&nbsp;
        <span style="color: #800000;">chart</span>: <span class="br0">&#123;</span>
            <span style="color: #800000;">type</span>: <span style="color: #FF0000;">'column'</span>,
            <span style="color: #800000;">height</span>: <span style="color: #FF0000;">'400'</span>
        <span class="br0">&#125;</span>,
&nbsp;
        <span style="color: #800000;">title</span>: <span class="br0">&#123;</span>
            <span style="color: #800000;">text</span>: <span style="color: #FF0000;">''</span>
        <span class="br0">&#125;</span>,
&nbsp;
        <span style="color: #800000;">xAxis</span>: <span class="br0">&#123;</span>
            <span style="color: #800000;">categories</span>: <span class="br0">&#91;</span><span style="color: #FF0000;">&quot;&lt;?=implode('&quot;</span>,<span style="color: #FF0000;">&quot;',$xName)?&gt;&quot;</span><span class="br0">&#93;</span>
        <span class="br0">&#125;</span>,
&nbsp;
        <span style="color: #800000;">yAxis</span>: <span class="br0">&#123;</span>
        	<span style="color: #800000;">type</span>: <span style="color: #FF0000;">&quot;logarithmic&quot;</span>
        <span class="br0">&#125;</span>,
&nbsp;
        <span style="color: #800000;">tooltip</span>: <span class="br0">&#123;</span>
            <span style="color: #800000;">formatter</span>: <span style="color: #0000ff;">function</span> <span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span>
                <span style="color: #0000ff;">return</span> <span style="color: #FF0000;">'&lt;b&gt;'</span> + <span style="color: #0000ff;">this</span>.x + <span style="color: #FF0000;">'&lt;/b&gt;&lt;br/&gt;'</span> +
                    <span style="color: #0000ff;">this</span>.series.<span style="color: #0080ff;">name</span> + <span style="color: #FF0000;">': '</span> + <span style="color: #0000ff;">this</span>.y + <span style="color: #FF0000;">'&lt;br/&gt;'</span> +
                    <span style="color: #FF0000;">'Total: '</span> + <span style="color: #0000ff;">this</span>.point.stackTotal;
            <span class="br0">&#125;</span>
        <span class="br0">&#125;</span>,
        <span style="color: #800000;">plotOptions</span>: <span class="br0">&#123;</span>
            <span style="color: #800000;">column</span>: <span class="br0">&#123;</span>
                <span style="color: #800000;">stacking</span>: <span style="color: #FF0000;">'normal'</span>,
                <span style="color: #800000;">dataLabels</span>: <span class="br0">&#123;</span>
                    <span style="color: #800000;">enabled</span>: <span style="color: #339933;">true</span>,
                    <span style="color: #800000;">color</span>: <span style="color: #FF0000;">&quot;black&quot;</span>,
                    <span style="color: #800000;">style</span>: <span class="br0">&#123;</span>
                        <span style="color: #800000;">textShadow</span>: <span style="color: #FF0000;">'0px black'</span>
                    <span class="br0">&#125;</span>
                <span class="br0">&#125;</span>
            <span class="br0">&#125;</span>
        <span class="br0">&#125;</span>,
        <span style="color: #800000;">series</span>: <span class="br0">&#91;</span><span class="br0">&#123;</span>
			<span style="color: #800000;">type</span>: <span style="color: #FF0000;">'column'</span>,
            <span style="color: #800000;">name</span>: <span style="color: #FF0000;">'Inscriptions'</span>,
            <span style="color: #800000;">data</span>: <span class="br0">&#91;</span>&lt;?=<span style="color: #0080ff;">implode</span><span class="br0">&#40;</span><span style="color: #FF0000;">','</span>,<span style="color: #0000ff;">$</span>inscriptions<span class="br0">&#91;</span><span style="color: #FF0000;">'normales'</span><span class="br0">&#93;</span><span class="br0">&#41;</span>?&gt;<span class="br0">&#93;</span>,
            <span style="color: #800000;">stack</span>: <span style="color: #FF0000;">'Normale'</span>,
            <span style="color: #800000;">color</span>: <span style="color: #FF0000;">&quot;#4DB2FF&quot;</span>
        <span class="br0">&#125;</span>,
        <span class="br0">&#123;</span>
			<span style="color: #800000;">type</span>: <span style="color: #FF0000;">'column'</span>,        	
            <span style="color: #800000;">name</span>: <span style="color: #FF0000;">'Inscriptions avec documents'</span>,
            <span style="color: #800000;">data</span>: <span class="br0">&#91;</span>&lt;?=<span style="color: #0080ff;">implode</span><span class="br0">&#40;</span><span style="color: #FF0000;">','</span>,<span style="color: #0000ff;">$</span>inscriptions<span class="br0">&#91;</span><span style="color: #FF0000;">'normalesMails'</span><span class="br0">&#93;</span><span class="br0">&#41;</span>?&gt;<span class="br0">&#93;</span>,
            <span style="color: #800000;">stack</span>: <span style="color: #FF0000;">'Normale'</span>,
            <span style="color: #800000;">color</span>: <span style="color: #FF0000;">&quot;#48FF78&quot;</span>  
        <span class="br0">&#125;</span>,      
        <span class="br0">&#123;</span>
			<span style="color: #800000;">type</span>: <span style="color: #FF0000;">'column'</span>,        	
            <span style="color: #800000;">name</span>: <span style="color: #FF0000;">'Inscriptions probatoire'</span>,
            <span style="color: #800000;">data</span>: <span class="br0">&#91;</span>&lt;?=<span style="color: #0080ff;">implode</span><span class="br0">&#40;</span><span style="color: #FF0000;">','</span>,<span style="color: #0000ff;">$</span>inscriptions<span class="br0">&#91;</span><span style="color: #FF0000;">'probatoires'</span><span class="br0">&#93;</span><span class="br0">&#41;</span>?&gt;<span class="br0">&#93;</span>,
            <span style="color: #800000;">stack</span>: <span style="color: #FF0000;">'Probatoire'</span>,
            <span style="color: #800000;">color</span>: <span style="color: #FF0000;">&quot;#ACDBFF&quot;</span>
        <span class="br0">&#125;</span>,
        <span class="br0">&#123;</span>
			<span style="color: #800000;">type</span>: <span style="color: #FF0000;">'column'</span>,        	
            <span style="color: #800000;">name</span>: <span style="color: #FF0000;">'Probatoires avec documents'</span>,
            <span style="color: #800000;">data</span>: <span class="br0">&#91;</span>&lt;?=<span style="color: #0080ff;">implode</span><span class="br0">&#40;</span><span style="color: #FF0000;">','</span>,<span style="color: #0000ff;">$</span>inscriptions<span class="br0">&#91;</span><span style="color: #FF0000;">'probatoiresMails'</span><span class="br0">&#93;</span><span class="br0">&#41;</span>?&gt;<span class="br0">&#93;</span>,
            <span style="color: #800000;">stack</span>: <span style="color: #FF0000;">'Probatoire'</span>,
            <span style="color: #800000;">color</span>: <span style="color: #FF0000;">&quot;#B9FFCB&quot;</span>  
        <span class="br0">&#125;</span><span class="br0">&#93;</span>
    <span class="br0">&#125;</span><span class="br0">&#41;</span>;</pre></td></tr></table></code><hr />
</div></div>

]]></content:encoded>
			<category domain="https://www.developpez.net/forums/f1187/javascript/bibliotheques-frameworks/"><![CDATA[Bibliothèques & Frameworks]]></category>
			<dc:creator>kevin254kl</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/d2178072/javascript/bibliotheques-frameworks/hightchart-conflit-prototype-js/</guid>
		</item>
	</channel>
</rss>
