0Pricing
TypeScript Academy · Урок

@types/node, ESM и CJS в Node

@types/node предоставляет типы для API Node, а параметры модуля в tsconfig позволяют выбрать между CommonJS и ESM.

«@types/node, ESM и CJS в Node» — бесплатный урок TypeScript Academy на CoddyKit. Это урок 1 из 2. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения TypeScript Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс TypeScript Academy содержит 2 уроков всего.

Введение

Цель: использовать @types/node для безопасности типов и настроить TS для модулей CommonJS и ES.

Установка типовых определений

Установите @types/node, чтобы получить определения типов для встроенных API Node, например fs и path.

npm install --save-dev @types/node

Глобальные переменные Node

С @types/node такие глобальные переменные, как process, __dirname и __filename, распознаются с указанием типов.

console.log(process.version);
console.log(__dirname);
console.log(__filename);

Пример CJS

CommonJS: стандартный вариант в Node. Используйте require и module.exports.

// CommonJS style
const fs = require("fs");
const data = fs.readFileSync("file.txt", "utf8");
console.log(data);

Пример ESM

ESM: современный синтаксис с import/export. Требуется указать в tsconfig "module": "ESNext" и добавить "type": "module" в package.json.

// ES Module style
import fs from "fs";
const data = fs.readFileSync("file.txt", "utf8");
console.log(data);

Модули tsconfig

Управляйте системой модулей в tsconfig.json. Переключайте module между CommonJS и ESNext.

{
  "compilerOptions": {
    "target": "ES2020",
    "module": "CommonJS",
    "moduleResolution": "node"
  }
}

Проверка типовых определений

Быстрая проверка: зачем устанавливать @types/node?

Повторение

Повторение: @types/node добавляет определения типов. CommonJS использует require, а ESM — import. tsconfig определяет систему модулей.

Часто задаваемые вопросы

Урок «@types/node, ESM и CJS в Node» бесплатный?

Да — полный текст урока «@types/node, ESM и CJS в Node» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс TypeScript Academy, подпишись на CoddyKit PRO. Курс TypeScript Academy содержит 2 уроков всего.

Чему я научусь в уроке «@types/node, ESM и CJS в Node»?

@types/node предоставляет типы для API Node, а параметры модуля в tsconfig позволяют выбрать между CommonJS и ESM. Ты практикуешь TypeScript Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать TypeScript Academy?

Предыдущий опыт не требуется. TypeScript Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 1 из 2.

Сколько времени занимает урок «@types/node, ESM и CJS в Node»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке TypeScript Academy?

Да. Каждый урок TypeScript Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. @types/node, ESM и CJS в Node
  2. Параметры выполнения (ts-node/tsx) и карты исходников
← Назад к TypeScript Academy