Как запустить рабочий файл TypeScript с импортом библиотеки проекта, используя ts-node в WebStorm / IntelliJ? - PullRequest
1 голос
/ 21 марта 2020

У меня есть проект TypeScript в IntelliJ, и мне нравится запускать рабочий файл TypeScript, чтобы поиграть с некоторым кодом и библиотеками. Я могу запустить чистый файл без импорта, используя Node.js конфигурацию запуска, используя --require ts-node/register в качестве поля параметров узла (см. help ). Однако, если я пытаюсь импортировать некоторые библиотеки проектов, например,

import {of} from "rxjs/observable/of";
of('hi').subscribe(console.log);

, я получаю TSError: ⨯ Unable to compile TypeScript, потому что Cannot find module 'rxjs/observable/of'. Я не получаю ошибки, если я использую обычный файл TypeScript в своем проекте root (вместо файла с нулями) или если я использую require (вместо import), то есть

const {Observable, of} = require("rxjs/observable/of");
of('hi').subscribe(console.log);

, но Я хотел бы использовать рабочий файл и синтаксис import. Чего мне не хватает в моей конфигурации?

Редактировать: Я могу не только скомпилировать версию с require без ошибок, но и выполнить ее без ошибок.

Согласно help

Чтобы передать любые дополнительные параметры в ts-узел (например, --project tsconfig.json), добавьте их в поле Параметры приложения.

но если я использую несуществующий путь вместо tsconfig.json, я не получу жалоб на то, что файл не существует. Опция даже учитывается ts-node?

1 Ответ

0 голосов
/ 21 марта 2020

Скретч-файлы хранятся в специальном месте вместе с настройками IDE , а не в проекте root. Вот почему модули, установленные в проекте, не могут быть разрешены при их переносе с ts-node. Мы не планируем менять место, где хранятся рабочие файлы, так как они должны быть доступны всем проектам.

...