Получение версии пакета из package.json: краткое руководство с примерами кода

В мире разработки JavaScript файл package.jsonиграет решающую роль. Он не только помогает управлять зависимостями проекта, но и хранит важную информацию о проекте, включая его версию. В этой статье мы рассмотрим различные методы извлечения версии из package.jsonи отображения ее с помощью JavaScript. Итак, давайте углубимся и изучим несколько полезных приемов!

Метод 1. Чтение package.json с использованием модуля Node.js fs

const fs = require('fs');
const packageJson = fs.readFileSync('package.json');
const { version } = JSON.parse(packageJson);
console.log('Version:', version);

Метод 2: использование require() для прямого импорта package.json

const packageJson = require('./package.json');
console.log('Version:', packageJson.version);

Метод 3. Использование встроенной утилиты командной строки NPM

npm show <package-name> version

Замените <package-name>на имя вашего пакета. Для этого метода требуется, чтобы в проекте был установлен NPM.

Метод 4. Программное использование пакета npm

const npm = require('npm');
npm.load(() => {
  npm.commands.view(['<package-name>', 'version'], true, (err, data) => {
    console.log('Version:', Object.values(data)[0].version);
  });
});

Не забудьте установить пакет npm, запустив npm install npmперед использованием этого кода.

Метод 5. Использование инструмента сборки, такого как Webpack или Rollup

// Webpack
const packageJson = require('./package.json');
console.log('Version:', packageJson.version);
// Rollup
import packageJson from './package.json';
console.log('Version:', packageJson.version);

И Webpack, и Rollup позволяют импортировать package.jsonнепосредственно в ваш код.

Используя один из этих методов, вы можете легко извлечь версию из package.jsonи отобразить ее в своем коде JavaScript. Независимо от того, предпочитаете ли вы подход на основе Node.js, утилиту командной строки NPM или используете инструменты сборки, такие как Webpack или Rollup, получить информацию о версии очень просто. Так что смело внедряйте эти методы в свои проекты, чтобы обеспечить плавное отображение версий!