J'utilise requirejs comme chargeur de module dans mon projet Typescript. J'ai découvert que certains modules (fichiers js) sont chargés deux fois et d'autres trois fois, ce qui pose des problèmes. Quelle peut être la raison? Est-ce parce que les chemins relatifs sont différents lors de l'importation de ces modules ? C'est de cela que je me méfie. Comment peut-il être résolu ?

0
John L. 18 mars 2019 à 19:42

2 réponses

Meilleure réponse

A l'aide d'une autre réponse sur SO : https://stackoverflow.com/a/16380692/6305376, j'ai ajouté le suivant à mon fichier data-main et cela a fonctionné :

require.config({
    baseUrl: './', 
 }
)

Apparemment, Requirejs crée différents modules pour le même fichier s'il est importé avec différentes URL relatives de différents modules. Ainsi, la définition d'une URL de base en tant que telle force tous les modules Requirejs à avoir leur nom par rapport au dossier le plus externe, créant un mappage un à un entre les modules et leurs noms. Ainsi, chaque module n'est chargé qu'une seule fois.

1
John L. 23 mars 2019 à 21:58

J'ai découvert que certains modules (fichiers js) sont chargés deux fois et d'autres trois fois, ce qui pose des problèmes.

Assurez-vous de ne pas utiliser d'extensions de fichier. C'est un problème connu (le module x.js est distinct de x)

0
basarat 18 mars 2019 à 17:30