J'utilise un fichier tsconfig.json pour spécifier les saisies que je souhaite utiliser dans mon application.
{
"compilerOptions": {
"types" : ["node", "lodash", "express"]
}
}
Cela importe les typages de ./node_modules/@types/node
, ./node_modules/@types/lodash
et ./node_modules/@types/expres
.
Ma question est de savoir comment configurer les typages pour les modules autonomes?
Mon exemple est le package zone.js qui contient à la fois le code de bibliothèque et les définitions de type.
Que dois-je mettre dans mon fichier tsconfig.json pour inclure zone.js.d.ts
?
Il vous suffit d'ajouter zone.js
au types
dans votre tsconfig.json
:
{
"compilerOptions": {
"types" : ["node", "lodash", "express", "zone.js"]
}
}
Notez que vous n'avez pas besoin d'inclure tous les types comme celui-ci. Définissez les définitions à partir de @types/*
les packages sont automatiquement inclus.
Vous pouvez donc supprimer la déclaration des types dans votre tsconfig.json
et tous les @types/*
les packages seraient automatiquement référencés.
Afin d'obtenir zone.js
pour travailler, vous pouvez soit l'inclure dans un seul fichier comme celui-ci:
/// <reference types="zone.js" />
Ou si vous le souhaitez disponible dans l'ensemble de votre projet, vous pouvez ajouter un index.d.ts
à la racine de votre projet et y mettre la référence.
Vous pouvez placer le fichier n'importe où, mais vous devez en informer le compilateur, soit en l'ajoutant dans tsconfig.json
ou en tant que ///<reference>
. Pour tsconfig
ajoutez le champ include
:
{
"compileOnSave": false,
"compilerOptions": {
..
},
"include": [
"zone.d.ts",
]
}