Автор оригинала: Ezekiel Ekunola.
Что такое Package.json файл
Package.json – это файл JSON, который существует в корне проекта JavaScript/Node. Он содержит метаданные, относящиеся к проекту, и он используется для управления зависимостями проекта, скрипты, версией и гораздо больше.
Создание файла package.json
Есть два способа создания/создания Package.json
файл.
НПМ или пряжа
Чтобы создать файл package.json с NPM , бегите
NPM init
на вашем терминале.Чтобы использовать этот метод, вам нужно иметь Узел установлен в вашей системе.
Чтобы создать файл package.json с пряжа , бегите
init init
на вашем терминале.Чтобы использовать метод пряжи, вам нужно иметь Узел и Пряжа установлен в вашей системе.
Примечание: на протяжении всего этого статьи я бы использовал
NPM
команды для отображения примеров того, как выполнять определенные задачи, если вы предпочитаете использоватьпряжа
, проверять здесь дляпряжа CLI
команды.После запуска команды он должен задать некоторую информацию о проекте и генерировать
Package.json
Файл в корне вашего проекта. Сгенерированный файл должен выглядеть как пример ниже.Примечание. Вы также можете запустить
NPM init -y
илипряжа init -y
генерироватьPackage.json
Файл с значениями по умолчанию.Вручную
Чтобы создать файл вручную, создайте
Package.json
Файл вручную в корне проекта и добавьте пустой объект с требуемыми свойствами, которые являются именем и версией. Это должно выглядеть как пример ниже.
Свойства файла package.json
название
Имя свойство – это обязательное поле в Package.json
Файл, он представляет имя проекта. Существуют правила, необходимые для указания имени для вашего проекта в файле Package.json.
- Должен быть в нижнем регистре
- должно быть одно слово
- может содержать дефис и подчеркивает
- не должен начинаться с подчеркивания (_) или точек (.)
"name": "package.json-mastery"
версия
Версия также является обязательным полем в Package.json
файл. Свойство обозначает текущую версию модуля для проекта. Правило, необходимое для поля версии, заключается в том, что ему необходимо следовать Семантические рекомендации версий E.G 1.0.2
"version": "1.0.0"
описание
Описание свойства используется в описании и предоставлении дополнительной информации о проекте.
"description": "Mastery of the package.json file"
двигатели
Свойство двигателей – это объект JSON PARES ключей/значений, которые используются для обозначения/указать версию библиотек и запуска, на которых необходимо запустить приложение.
"engines": { "npm": "6.10.0", "node": "10.14.1" }
зависимости
Свойство зависимостей обозначает список необходимых модулей/пакетов для вашего приложения к функции. После установки зависимости он добавляется в список зависимостей.
"dependencies": { "bcryptjs": "^2.4.3", "cors": "^2.8.5", "dotenv": "^6.1.0", "express": "^4.16.4", }
Чтобы установить зависимость, запустить NPM я пакет
или NPM установить пакет
на вашем терминале. Где пакет – это имя пакета, которую вы пытаетесь установить.
Например, чтобы установить Axios Зависимость, беги NPM Установка Axios
на вашем терминале.
DevDependons.
Свойство DevDependonds обозначает список модулей/пакетов, которые не требуются для вашего приложения для функции. Они также известны как зависимости развития.
"devDependencies": { "eslint": "^4.19.1", "mocha": "^6.2.0", "nodemon": "^1.19.1", }
Чтобы установить DevDependency, запустите NPM я пакет --save-dev
или NPM установить пакет -D
на вашем терминале. Где пакет – это имя пакета, которую вы пытаетесь установить.
Например, чтобы установить Чай Devdependents, беги NPM Установите Chai --save-dev
на вашем терминале.
скрипты
Свойство Script принимает объект JSON на пары ключа/значения. Каждый скрипт можно использовать при выполнении различных наборов задач, таких как строительство, тестирование, линтами приложения. Вы можете запустить скрипты, запустив NPM запустить ScriptName
или пряжа сценарий
на терминале.
"scripts": { "start": "node index", "dev": "nodemon index", "test": "jest", "lint": "eslint ./server", }
Например, чтобы выполнить dev Сценарий в примере выше, запустить NPM запустить dev
или пряжа dev
на вашем терминале.
основной
Основное свойство служит точкой входа вашего приложения и должна указывать на файл, который служит точкой записи в ваше приложение.
"main": "app.js"
Главная страница
Свойство Homepage используется для указания страницы посадки для приложения/пакета.
"homepage": "https://github.com/Easybuoy/package.json-mastery#readme",
частный
Частное свойство является ложным по умолчанию, но может быть установлено значение true для предотвращения публикации приложения/пакета.
"private": true
лицензия
Это свойство обозначает тип лицензии, которая используется проектом
"license": "MIT"
автор
Это свойство обозначает создатель/владелец проекта
"author": "Ezekiel Ekunola"
репозиторий
Ключевое слово «Репозиторий» – это объект JSON пары ключа/значения, которые используются для указания системы управления версиями, используемой для управления приложением. Вы можете указать тип используемого элемента управления версиями, URL к репозиторию, а также дополнительный каталог в репозитории.
"repository": { "type": "git", "url": "git+https://github.com/Easybuoy/package.json-mastery.git" }
баги
Свойство ошибок используется для указывает на страницу выпусков репозитория для приложения или в любом месте проблем проекта.
"bugs": { "url": "https://github.com/Easybuoy/package.json-mastery/issues" }
ключевые слова
Свойство ключевых слов – это массив ключевых слов, которые помогают идентифицировать ваш проект или облегчить ваш проект, когда пользователь ищет эти ключевые слова.
"keywords": ["node", "javascript", "npm", "yarn"]
Пользовательские свойства
Файл package.json также можно использовать для конкретных команд пакета, такие как Babel, Eslint, jest и Mots. Вы можете найти использование в документации по пакету.
Найти пример пользовательской недвижимости для Jest
ниже.
"jest": { "snapshotSerializers": [ "enzyme-to-json/serializer" ] }
После объединения всех свойств, объясненных выше, мы можем в конечном итоге иметь Package.json. файл, похожий на пример ниже
{ "name": "package.json-mastery", "version": "1.0.0", "description": "Mastery of the package.json file", "private": false, "main": "index.js", "scripts": { "start": "node index", "dev": "nodemon index", "test": "jest" }, "repository": { "type": "git", "url": "git+https://github.com/Easybuoy/package.json-mastery.git" }, "keywords": [ "node", "javascript", "npm", "yarn" ], "author": "Ezekiel Ekunola", "license": "ISC", "bugs": { "url": "https://github.com/Easybuoy/package.json-mastery/issues" }, "homepage": "https://github.com/Easybuoy/package.json-mastery#readme", "engines": { "npm": "6.10.0", "node": "10.14.1" }, "dependencies": { "bcryptjs": "^2.4.3", "cors": "^2.8.5", "dotenv": "^6.1.0", "express": "^4.16.4" }, "devDependencies": { "eslint": "^4.19.1", "mocha": "^6.2.0", "nodemon": "^1.19.1" }, "nyc": { "exclude": [ "server/app.js", "server/config/", "server/build" ] } }
Заключение
В этой статье мы смогли посмотреть, что a Package.json
Файл это, как его создать, разные свойства и их использование.
Есть еще много недвижимости, которые можно указать в файле Package.json, если вы хотите углубиться, проверять здесь Отказ
Если у вас есть какие-либо вопросы или отзывы об этой статье, не стесняйтесь оставить комментарий.
Спасибо за прочтение.
Эта статья была первоначально опубликована на моем Блог Отказ