Bonjour,

Pour faire suite à la discussion précédente sur les imports dynamiques, je suis face au problème suivant.

J'ai une application cartographique qui est quelque sorte un greffon, sur lequel va venir se greffer un ou plusieurs modules.

Sur ce greffon, on va trouver la déclaration de la carte selon :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
var map = new maplibregl.Map({
+ options
})
Pour fonctionner, les modules ont besoin d'avoir map défini. Sans importer les variables dans chacun des modules, map renverra undefined.

J'ai essayé un import dynamique dans les modules selon :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
import * as key from './config.js'
let { map } = await import(key.BASE_MODULE + '/app/map.js');
Mais comme cet import doit se faire dans chaque module, le code ci-dessus s'execute autant de fois qu'il y a de modules.

Comment faire pour qu'il n'y ait qu'un seul import ?

Merci pour vos retours,

Sylvain


UPDATE : il semblerait que cela porte sur la portée de la variable (let au lieu de var).