Supposons que la définition de classe suivante à l'aide tapuscrit en Animal.ts:
module Animals
{
export class Animal { }
}
Si je veux créer une classe de chien dans un fichier séparé, par exemple dans Dog.ts en utilisant ce code:
module Animals
{
export class Dog extends Animal { }
}
le nom « Animal » n'existe pas dans la portée actuelle, est l'erreur que je reçois dans la définition de la classe Dog.
L'ajout de la ligne suivante à Dog.ts
/// <reference path=Animal.ts/>
corrige l'erreur de compilation mais pourquoi est-ce nécessaire, si les deux classes sont définies dans le même module?
En d'autres termes, je veux des déclarations du module d'étendent sur des fichiers avec chaque classe ou une définition d'interface dans leur propre fichier. Est-ce encore les meilleures pratiques?













