Asumir la siguiente definición de clase utilizando mecanografiado en Animal.ts:
module Animals
{
export class Animal { }
}
Si quiero crear una clase de perro en un archivo separado, por ejemplo en Dog.ts utilizando este código:
module Animals
{
export class Dog extends Animal { }
}
el nombre de Animal no existe en el ámbito actual, es el error que consigo en la definición de la clase Perro.
Adición de la siguiente línea al Dog.ts
/// <reference path=Animal.ts/>
corrige el error de compilación, pero ¿por qué es necesario, si ambas clases están siendo definidas dentro del mismo módulo?
En otras palabras, quiero declaraciones del módulo a extenderse a lo largo archivos con cada clase de definición de interfaz o en su propio archivo. ¿Es esto mejor práctica?













