nodejs требуют внутри файла TypeScript



мне интересно, как загрузить обычный модуль nodejs из

557   4  

4 ответов:

машинопись всегда будет жаловаться, когда он не может найти символ. Компилятор поставляется вместе с набором определений по умолчанию для window,document и такие указаны в файле под названием lib.d.ts. Если я делаю grep для require в этом файле я не могу найти определение функции require. Следовательно, мы должны сами сказать компилятору, что эта функция будет существовать во время выполнения с помощью declare синтаксис:

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

в моей системе, это компилируется просто замечательно.

синтаксис:

import sampleModule = require('modulename');

или

import * as sampleModule from 'modulename';

затем скомпилируйте свой текст с помощью --module commonjs.

если пакет не приходят с и package.json нет "typings" собственность tsc будут лаять, что он не знает, что 'modulename' относится. Для этого вам нужно найти .d.ts файл для него на http://definitelytyped.org/, или напишите сами.

если вы пишете код для узлов.в JS вы также хотите, чтобы node.d.ts файл из http://definitelytyped.org/.

лучшим решением является получение копии определений типов узлов. Это позволит решить все виды проблем зависимости, а не только require(). Это было сделано ранее с помощью пакетов, таких как typings, но, как упоминал Майк Чемберлен, типирование не рекомендуется. Современный способ делает это так:

npm install --save-dev @types/node

Он не только исправит ошибку компилятора, но и добавит определения API узла в вашу среду IDE.

использовать typings получить доступ к узлу функции из машинописного текста:

typings install env~node --global

Если у вас нет typings установки:

npm install typings --global

Comments

    Ничего не найдено.