2012-10-02 34 views
6

Tengo una aplicación nodo que tiene una cadena de require s, así:¿Cómo puedo importar un archivo externo con TypeScript?

var express = require('express'), 
    router = require('./router'), 
    data = require('./data'); 

Este código funciona sin cambios, pero ¿cómo puedo sacar el máximo provecho de los módulos mecanografiado? Simplemente usando

import data = module("./data") 

me dirá

El nombre '' ./data '' no existe en el ámbito actual

¿Cómo puedo importar un archivo externo con mecanografiado?

Respuesta

4

El ejemplo,

http://www.typescriptlang.org/Samples/#ImageBoard

contiene un archivo llamado node.d.ts que muestra cómo declarar los tipos para un módulo de Node.js existente.

TypeScript requiere que el módulo sea declarado para su uso con la sintaxis import. Esto generalmente se proporciona en un archivo .d.ts, pero se puede incluir en el mismo archivo. Un ejemplo de esta situación como,

declare module "./data" { 
    function getData(): number; 
} 

import data = module("./data"); 

var myData = data.getData(); 

En un archivo .d.ts las palabras clave declare se implica y se puede omitir.

+1

Parece que no funciona en la versión actual (1.0) del compilador mecanografiado. –

Cuestiones relacionadas