Objet externe : chargement des resources tiers

Bonjour,

On aimerait pouvoir créer des objets externes ayant pour dépendances des librairies externes (Angular, ReactJS …). Le souci est quand on rajoute une ressource dans simplicité ça la charge automatiquement dans le de la page cependant ces librairies doivent attendre que le DOM soit chargé avant de s’exécuter. Elles doivent donc être insérées à la fin de la page (avant la fermeture du ). On bloque et on ne sait pas quoi faire.

Le seul moyen de contournement qu’on a trouvé c’est de mettre le setdecoration à false pour que les ressources ne soient pas chargées et on insère les balises script à la main juste avant la fermeture du et du coup on perd le worktitlecontainer.

Avez-vous des idées pour nous aider sur ce sujet?

Version simplicité : 3.2 M06

Merci par avance

Zouhair

Un object externe est une page specifique.

Soit vous utilisez le framework UI de Simplicite (c’est le cas par défaut) soit vous pouvez faire une page totalement specifique (setDecoration(false)), cf. https://www.simplicite.io/resources/documentation/01-core/externalobject-code-examples.md

Dans une page totalement specifique vous pouvez intégrer tous les JS/CSS tiers que vous souhaitez, le mieux pour des composants disponible sur des CDNs public est d’utiliser des inclusions depuis ces CDNs, sinon vous pouvez mettre vos JS/CSS dans des resources (de la disposition ou de l’objet externe) vous devez alors les inclure specifiquement (par exemple si vous utilisez la classe [JQuery]WebPage cela peut se faire via les APIs append[JS|CSS]Includes qui les mettrons dans le header HTML mais vous pouvez aussi mettre vos balises dans le corps HTML de votre page (par exemple à la fin) en utilisant HTMLTool.getResource[JS|CSS][Content|URL].Vous pouvez aussi écrire votre HTML totalement à la main, etc.

Bref il y a plein de possibilités.

En utilisant le framework UI de Simplicité (setDecoration(true)), est ce qu’il y a moyen d’empêcher le chargement automatique des ressources dans le header HTML? pour utiliser le HTMLTool.getResource[JS] et avoir le contrôle sur l’ordre de chargement.

Zouhair

Sur une page utilisant le framework UI Simplicité les resource JS/CSS socle seront mis dans le header HTML
Mais rien n’empêche de mettre d’autres resources spécifiques dans le corps HTML (ex: à la fin) plutôt que dans le header