pnpm pkg
Додано у: v11.3.0
Керує вмістом package.json з командного рядка.
pnpm pkg get [<key> [<key> ...]]
pnpm pkg set <key>=<value> [<key>=<value> ...]
pnpm pkg delete <key> [<key> ...]
pnpm pkg fix
До вкладених полів потрібно звертатись за допомогою шляхів, розділених крапками (наприклад, scripts.test, repository.url).
Команди
get
Отримує значення з package.json. Без аргументів, виводить повний маніфест. З одним чи більше ключів виводить запитувані поля.
pnpm pkg get name
pnpm pkg get name version
pnpm pkg get scripts.test
Якщо запитується лише один ключ і він виводиться у вигляді рядка, виводиться необроблене значення; в іншому випадку значення передається у форматі JSON. Вкажіть --json, щоб завжди мати вивід у форматі JSON.
set
Встановлює одне чи більше значень в package.json. Кожен аргумент має формат key=value.
pnpm pkg set name=my-package
pnpm pkg set scripts.build="tsc -p ."
pnpm pkg set 'keywords[0]'=cli
Звичай значення зберігаються у вигляді рядків (string). Передайте аргумент --json, щоб перед збереженням значення перетворити його у формат JSON (це корисно для логічних значень, чисел, масивів та об’єктів):
pnpm pkg set private=true --json
pnpm pkg set 'engines={"node":">=22"}' --json
delete
Вилучає один або кілька ключів з package.json.
pnpm pkg delete scripts.test
pnpm pkg delete keywords
fix
Автоматично виправляє типові помилки у файлі package.json (наприклад, видаляє значення name або version, що не є рядком; видаляє блоки залежностей та scripts, значення яких не є об’єктами; видаляє поле bin, яке не є ані рядком, ані об’єктом).
pnpm pkg fix
Параметри
--json
Якщо встановлено, перед записом кожне значення value інтерпретується як JSON. При отриманні одного ключа повертає значення у форматі JSON замість необробленого значення.
--recursive, -r
Виконує команду для кожного проєкту в робочій області або для кожного проєкту, вибраного за допомогою параметра --filter.
pnpm -r pkg get name
pnpm -r pkg set version=1.0.0
pnpm --filter "./packages/*" pkg get name
Команда pnpm -r pkg get повертає об’єкт JSON, ключами якого є назви пакунків; команди set, delete та fix застосовуються до кожного відповідного проєкту.