Node.js Совсем недавно объединили один PR#53725[1],Основное содержание — этоустановив flag --experimental-strip-types
,так что это может быть Node.js выполнить непосредственно в TypeScript
документ。Node.js будет автоматически TypeScript
Исходный код переведен на JavaScript
Исходный код, нет необходимости вручную устанавливать зависимости для перевода。в этомВ процессе трансляции проверка типов выполняться не будет, и вся информация о типах будет удалена.。
О мотивации. Во всех предыдущих опросах пользователи выражали эту потребность. Надо признать, что игнорировать это нельзя, и пользователи должны обращать внимание на свои потребности. В то же время популярность TypeScript в последние годы становится все выше и выше (если вы не изучите TS сейчас, вы чувствуете, что вас исключат, ха-ха-ха...).
Благодаря встроенной функции TS Node.js пользователям не нужно устанавливать внешние зависимости и некоторые загрузчики.
Например, запустите напрямую node index.ts
const foo: string = "foo";
Преобразованный код:
const foo = "foo";
Другие среды выполнения также преобразуют некоторые TypeScript Уникальные функции преобразуются в JavaScript, такой как перечисления (Enums), и перечисления находятся в JavaScript не существует в . по крайней мере в этом PR На начальном этапе этого преобразования не происходит, что означает использование Enum
, namespaces
и т. д. функции будут невозможны.
Выбрать на инструменте @swc/wasm-typescript
,Потому что это обеспечивает простоту,другойинструментможет быть Rust и Go также добавляется в набор инструментов, в то время как @swc/wasm-typescript
просто содержит wasm документ для переплета js пакет документов и Swc В настоящее время также Deno Используется для той же цели и также проверен в бою. 😄。
Есть еще некоторые ограничения:
Должен PR Просто внедрите экспериментальную поддержку TS первый шаг,Есть еще кое-какие дела,Подробная ссылкаЭкспериментальная поддержка TS Дорожная карта[3]
Наконец, что вы думаете об экспериментальной поддержке TS в Node.js? Добро пожаловать, чтобы оставить сообщение в области комментариев!
Ссылки
[1]
PR#53725: https://github.com/nodejs/node/pull/53725
[2]
Sourcemaps вопрос: https://github.com/nodejs/node/pull/53725#issuecomment-2209238883
[3]
Экспериментальная поддержка TS Дорожная карта: https://github.com/nodejs/loaders/issues/217
- End -