Установка Day.js через npm выполняется стандартной командой менеджера пакетов Node.js. Библиотека распространяется как готовый модуль, не требующий дополнительной сборки или компиляции.
npm install dayjs
После установки пакет появляется в node_modules, а также
фиксируется в package.json в разделе зависимостей:
{
"dependencies": {
"dayjs": "^1.11.10"
}
}
Day.js не требует глобальной установки. Использование осуществляется только как локальной зависимости проекта.
Импорт библиотеки в коде зависит от системы модулей.
Для CommonJS:
const dayjs = require('dayjs');
console.log(dayjs().format());
Для ES Modules:
import dayjs from 'dayjs';
console.log(dayjs().format());
В современных сборщиках (Vite, Webpack, Rollup, Next.js) предпочтительным считается ESM-вариант, так как он лучше оптимизируется для tree-shaking и статического анализа.
При использовании Yarn установка выполняется аналогичной командой:
yarn add dayjs
После выполнения зависимости фиксируются в
package.json:
{
"dependencies": {
"dayjs": "^1.11.10"
}
}
Yarn создаёт файл блокировки yarn.lock, который
обеспечивает стабильность версий зависимостей между окружениями.
Использование Day.js после установки полностью идентично npm-варианту:
import dayjs from 'dayjs';
const now = dayjs();
console.log(now.format('YYYY-MM-DD HH:mm:ss'));
Обе системы пакетного менеджмента решают одну задачу — установку зависимостей, однако различаются механизмами кеширования и разрешения пакетов.
package-lock.jsonyarn.lockДля Day.js различия не влияют на поведение библиотеки, так как она не имеет нативных бинарных зависимостей и представляет собой чистый JavaScript-модуль.
После установки можно проверить корректность подключения через простой вызов:
import dayjs from 'dayjs';
const date = dayjs('2024-01-01');
console.log(date.format());
Если модуль импортируется без ошибок, значит установка прошла успешно.
Пакет Day.js содержит:
Пример расположения после установки:
node_modules/dayjs/
├── index.js
├── dayjs.min.js
├── plugin/
├── locale/
└── types/
Основной файл экспортирует функцию, которая возвращает объект даты-обёртки.
Day.js включает встроенные типы, поэтому дополнительная установка
@types/dayjs не требуется.
Пример использования в TypeScript:
import dayjs from 'dayjs';
const timestamp: string = dayjs().toISOString();
console.log(timestamp);
Типизация позволяет использовать автодополнение и проверку корректности методов без дополнительных настроек.
В серверных приложениях Day.js устанавливается как обычная зависимость:
npm install dayjs
Используется для обработки дат в API, логике бизнес-правил, планировщиках задач.
В клиентских приложениях установка аналогична:
npm install dayjs
Далее библиотека импортируется в модули:
import dayjs from 'dayjs';
document.body.textContent = dayjs().format();
Сборщики автоматически включают только используемые части библиотеки.
В проектах Next.js Day.js устанавливается как обычная зависимость, без дополнительных конфигураций:
npm install dayjs
Важно учитывать, что при серверном рендеринге дата может вычисляться на сервере, поэтому форматирование следует выполнять с учётом временной зоны окружения.
Day.js поддерживает современные версии Node.js. При использовании устаревших версий могут возникать ошибки импорта ES Modules.
Решение — использование актуальной версии Node.js LTS.
Неправильный импорт часто связан с смешением CommonJS и ESM:
// некорректно в ESM-проекте
const dayjs = require('dayjs');
или наоборот:
// некорректно в CommonJS без настройки
import dayjs from 'dayjs';
Выбор синтаксиса должен соответствовать конфигурации проекта.
В монорепозиториях может возникать ситуация, когда Day.js
устанавливается в нескольких пакетах. Это увеличивает размер
node_modules, но не влияет на выполнение кода, так как
библиотека не содержит тяжёлых runtime-зависимостей.
После установки базового пакета часто подключаются дополнительные возможности через плагины:
import dayjs from 'dayjs';
import utc from 'dayjs/plugin/utc';
dayjs.extend(utc);
console.log(dayjs().utc().format());
Плагины не устанавливаются отдельно через npm — они уже входят в состав пакета и подключаются вручную.
Типичный процесс использования Day.js после установки сводится к трём шагам:
dayjs() как базового конструктора
датыimport dayjs from 'dayjs';
const formatted = dayjs().format('YYYY-MM-DD');
Эта простота делает библиотеку предсказуемой в установке и интеграции в любые JavaScript-проекты.