@types/d3
et j'ai eu des problèmes.J'essaie de passer de d3 v4.x à 5.0, avec les dépendances suivantes :
"d3": "5.0.0",
"@types/d3": "5.0.0",
Lorsque je compile l'application, je vois :
ERREUR dans node_modules/@types/d3/index.d.ts(37,1) : erreur TS2308 : le module 'd3-scale' a déjà exporté un membre nommé 'interpolateCool'. Envisagez de réexporter explicitement pour résoudre l'ambiguïté.
node_modules/@types/d3/index.d.ts(37,1) : erreur TS2308 : le module 'd3-scale' a déjà exporté un membre nommé 'interpolateCubehelixDefault'. Envisagez de réexporter explicitement pour résoudre l'ambiguïté.
node_modules/@types/d3/index.d.ts(37,1) : erreur TS2308 : le module 'd3-scale' a déjà exporté un membre nommé 'interpolateInferno'. Envisagez de réexporter explicitement pour résoudre l'ambiguïté.
node_modules/@types/d3/index.d.ts(37,1) : erreur TS2308 : le module 'd3-scale' a déjà exporté un membre nommé 'interpolateMagma'. Envisagez de réexporter explicitement pour résoudre l'ambiguïté.
node_modules/@types/d3/index.d.ts(37,1) : erreur TS2308 : le module 'd3-scale' a déjà exporté un membre nommé 'interpolatePlasma'. Envisagez de réexporter explicitement pour résoudre l'ambiguïté.
node_modules/@types/d3/index.d.ts(37,1) : erreur TS2308 : le module 'd3-scale' a déjà exporté un membre nommé 'interpolateRainbow'. Envisagez de réexporter explicitement pour résoudre l'ambiguïté.
node_modules/@types/d3/index.d.ts(37,1) : erreur TS2308 : le module 'd3-scale' a déjà exporté un membre nommé 'interpolateViridis'. Envisagez de réexporter explicitement pour résoudre l'ambiguïté.
node_modules/@types/d3/index.d.ts(37,1) : erreur TS2308 : le module 'd3-scale' a déjà exporté un membre nommé 'interpolateWarm'. Envisagez de réexporter explicitement pour résoudre l'ambiguïté.
node_modules/@types/d3/index.d.ts(37,1) : erreur TS2308 : le module 'd3-scale' a déjà exporté un membre nommé 'schemeCategory10'. Envisagez de réexporter explicitement pour résoudre l'ambiguïté.
Si cela fait une différence, mon application est compilée à l'aide de angular-cli (webpack) et fait référence à d3
dans le tableau types
dans tsconfig.app.json.
Je ne sais pas si cela est spécifique à ma configuration d'une manière ou d'une autre, ou s'il s'agit d'un bogue - j'apprécierais donc l'aide de quiconque en sait plus à ce sujet.
@matt-senseye Je ne sais pas pourquoi vous ajouteriez d3
au tableau types
dans tsconfig.app.json
, cela ne devrait pas être nécessaire. La résolution standard des modules/dactylographies TS devrait tout traiter.
Avez-vous un équivalent package-lock.json
ou yarn
pour vérifier les dépendances qui ont été installées pour d3
et @types/d3
? Il semble y avoir un conflit de version entre d3-scale
et d3-scale-chromatic
. Les erreurs que vous avez répertoriées sont toutes les anciennes fonctionnalités de [email protected]
, qui à partir de d3-scale@2
ont été refactorisées en d3-scale-chromatic
. Ainsi, votre installation devrait avoir une dépendance implicite sur d3-scale@2
.
Merci @tomwanzek - oui, cela semblait être une sorte de conflit de version étrange avec les dépendances référencées dans mon fichier fil.lock.
À l'origine, je viens de mettre à jour les numéros de version dans package.json
et d'exécuter yarn install
, ce qui, pour une raison quelconque, a entraîné les erreurs ci-dessus.
Cependant, supprimer d3 et les définitions de type en premier, puis rajouter les packages dans leurs dernières versions semble le résoudre. Ce qui suit a fait l'affaire:
yarn remove <strong i="11">@d3</strong>
yarn remove @types/d3
yarn add <strong i="12">@d3</strong>
yarn add @types/d3 --dev
J'ai une erreur très similaire, mais
npm remove --save-exact d3
npm remove --save-exact @types/d3
npm install --save-exact d3
npm install --save-exact -D @types/d3
ne le résout pas.
Lorsque je navigue vers les types eux-mêmes, je peux voir que d3-scale
et d3-scale-chromatic
exportent parfois les mêmes fonctions :
Est-ce normal? Ne devrais-je pas installer d3
mais chaque paquet séparé à la place ?
Commentaire le plus utile
Merci @tomwanzek - oui, cela semblait être une sorte de conflit de version étrange avec les dépendances référencées dans mon fichier fil.lock.
À l'origine, je viens de mettre à jour les numéros de version dans
package.json
et d'exécuteryarn install
, ce qui, pour une raison quelconque, a entraîné les erreurs ci-dessus.Cependant, supprimer d3 et les définitions de type en premier, puis rajouter les packages dans leurs dernières versions semble le résoudre. Ce qui suit a fait l'affaire: