Zoeken op website

node.js - Node-modules importeren met TypeScript


Ik probeer dit aan het werk te krijgen, maar ik kan nergens op SO een oplossing vinden. Wanneer ik probeer deze single-file app te compileren:

import http = require('http')
http.createServer(function (req, res) {
  res.writeHead(200, {'Content-Type': 'text/plain'});
  res.end('Hello World\n');
}).listen(1337, '127.0.0.1');
console.log('Server running at http://127.0.0.1:1337/');

Met het commando "tsc app.ts --module 'commonjs'" krijg ik de volgende fout (zonder de --module vlag krijg ik een extra fout die me vertelt dat ik het nodig heb om externe modules te compileren):

error TS2071: Unable to resolve external module '"http"'.
error TS2072: Module cannot be aliased to a non-module type.

Antwoord #1

TypeScript moet weten dat http aanwezig is.

Bijgewerkt

Installeer de type-definities voor node:

npm install @types/node

Oud antwoord

Volg deze twee stappen

  • Download het node.d.ts-bestand van hier: https://github.com/borisyankov/DefinitelyTyped/tree/master/node
  • Voeg bovenaan je bestand toe:

    /// <reference path="node.d.ts" />
    

PS: Zie een voorbeeldbestandsbestand : https://github.com/borisyankov/DefinitelyTyped/blob/master/node/node-tests.ts

Gerelateerde artikelen