[node.js] How to NodeJS require inside TypeScript file?

How do I load a regular NodeJS module (from node_modules) from within a TypeScript class?

When I try to compile .ts file that contains:

var sampleModule = require('modulename');

Compiler prompts that I can't use require in this scope. (That line is at the beginning of the file).

This question is related to node.js typescript

The answer is


Typescript will always complain when it is unable to find a symbol. The compiler comes together with a set of default definitions for window, document and such specified in a file called lib.d.ts. If I do a grep for require in this file I can find no definition of a function require. Hence, we have to tell the compiler ourselves that this function will exist at runtime using the declare syntax:

declare function require(name:string);
var sampleModule = require('modulename');

On my system, this compiles just fine.


Similar questions with node.js tag:

Similar questions with typescript tag: