dir.by  
  Поиск  
Компьютер, программы
Node.js (это web сервер исполняющий js файлы)
npm in Node.js
 Файл package.json в Node.js 
посмотрели 7068 раз
обновлено: 7 Augusta 2020
package.json это файл в котором содержится:
Название секции
Описание
"dependencies": {
     ...
}
Секция "dependencies" содержит названия и версии пакетов, которые используются при реальной работе проекта (запуске проекта).

Пример
"dependencies": {
     "react": "^16.13.1",
     "react-dom": "^16.13.1"
}


На заметку! Команда npm install имя_пакета
автоматически добавляет имя пакета в секцию "dependencies" в файл package.json

Еще на заметку! Команда npm install не меняет файл package.json
Вот что произойдет:
1) Прочитаются все названия пакетов и версии из файла package.json из секций "dependencies" и devDependencies
2) Пакеты (по названию и версии) будут скачиваться с интернета в папку node_modules.
"devDependencies": {
     ...
}
Секция "devDependencies" содержит названия и версии пакетов, которые используются при разработке проекта (компилировании проекта).

Самый простой пример webpack всгда размещается в секции "devDependencies". Потому что webpack запускается только чтобы объединить все js файлы в один (то есть для компиляции проекта).

Пример
"devDependencies": {
     "webpack": "^4.43.0",
     "webpack-cli": "^3.3.12"
}


На заметку! Команда npm install --save-dev имя_пакета
автоматически добавляет имя пакета в секцию "devDependencies" в файл package.json

Еще на заметку! Команда npm install не меняет файл package.json
Вот что произойдет:
1) Прочитаются все названия пакетов и версии из файла package.json из секций "dependencies" и devDependencies
2) Пакеты (по названию и версии) будут скачиваться с интернета в папку node_modules.
"scripts": {
     ...
}
В секции "scripts" мы пишем скрипты, которые можно запускать.

Чтобы запустить скрипт нужно в командной строке выполнить:
npm run имя_скрипта
Пример 1. Файл package.json
"scripts": {
     "EvgenConvertCSS": "node-sass --include-path scss 1.scss 1.css"
}

выполняем в командной строке:
npm run EvgenConvertCSS

Запустится мой скрипт EvgenConvertCSS, то есть выполнится node-sass который, сконвертирует файл 1.scss в файл 1.css
Читать подробнее: node-sass конвертация файла 1.scss в файл 1.css ...
Пример 2. Файл package.json
"scripts": {
     "EvgenMyCommand": "mkdir AAA"
}

выполняем в командной строке:
npm run EvgenMyCommand

Запустится мой скрипт EvgenMyCommand, то есть выполнится командная строка "mkdir AAA", а это создание папки AAA
Читать подробнее: npm выполнение командной строки "mkdir AAA" ...
Пример 3. Файл package.json
"scripts": {
     "MyScript1": "npm run MyScript2",
     "MyScript2": "какой нибудь скрипт!!!"
}

выполняем в командной строке:
npm run MyScript1

Запустится мой скрипт MyScript1,
Скрипт MyScript1 выполнит скрипт MyScript2
Читать подробнее: npm выполнение скрипта выполняющий другой скрипт ...
Зачем мы устанавливаем пакеты в разные секции "dependencies" и "devDependencies" в файле package.json?
Пакеты в секции "devDependencies" я использую только для вызова в скриптах (секция "scripts")
Пример 1
Рассмотрим React приложение
В React приложении у меня файл package.json
{
     "name": "my_react_example1",

     "scripts": {
          "MyBuild": "webpack"
     },

     "dependencies": {
          "react": "^16.13.1",
          "react-dom": "^16.13.1"
     },

     "devDependencies": {
          "babel-core": "^6.26.3",
          "babel-loader": "^7.1.5",
          "babel-preset-react": "^6.24.1",
          "webpack": "^4.43.0",
          "webpack-cli": "^3.3.12",
          "webpack-dev-server": "^3.11.0"
     }
}


В командной я запускаю скрипт, чтобы скомпилировать проект
npm run MyBuild

Скрипт MyBuild определен в файле package.json.
...
    "scripts": {
        "MyBuild": "webpack"
    }
...

Скрипт MyBuild запустит webpack
Скрипт знает что такое webpack потому что мы установили пакет webpack в секции "devDependencies"

webpack соберет мой js файл и пакеты React в один выходной js файл.
Пакеты React находятся в секции "dependencies".
Потому что выходной js файл будет использовать React функциональность.

На заметку!
При компиляции проекта (запукается webpack) и webpack для каждого js файла будет запускать Babel.
Babel в каждом js файле сконвертирует JSX код в JavaScript во время компиляции проекта.
Поэтому Babel пакет установлен в секции "devDependencies".

Читать подробнее: React приложение ...
Пример 2
Рассмотрим TypeScript приложение
В TypeScript приложении у меня файл package.json
{
     "name": "my_typescript_example",

     "scripts": {
          "MyBuild": "webpack"
     },

     "dependencies": {
     },

     "devDependencies": {
          "webpack": "^4.32.0",
          "webpack-cli": "^3.3.2",
          "webpack-dev-server": "^3.4.1",
          "typescript": "^3.9.7",
          "awesome-typescript-loader": "^5.2.1"
     }
}


В командной я запускаю скрипт, чтобы скомпилировать проект
npm run MyBuild

Скрипт MyBuild определен в файле package.json.
...
    "scripts": {
        "MyBuild": "webpack"
    }
...

Скрипт MyBuild запустит webpack
Скрипт знает что такое webpack потому что мы установили пакет webpack в секции "devDependencies"

webpack соберет ts файлы в один выходной js файл.

На заметку!
При компиляции проекта (запукается webpack) и webpack для каждого ts файла будет запускать TypeScript.
TypeScript каждый ts файл сконвертирует в js файл во время компиляции проекта.
Поэтому TypeScript пакет установлен в секции "devDependencies".

Читать подробнее: TypeScript приложение ...
 
← Previous topic
How do I update my npm version (install the latest version) ? | Node.js
 
Next topic →
Difference Between Tilde(~) and Lid(^) in package.json | Node.js
 
Your feedback ... Comments ...
   
Your Name
Your comment (www links can only be added by a logged-in user)

  Объявления  
  Объявления  
 
What is Node.js ?
How do I find out the version of Node.js?
Installing Node.js (download and install for Windows)
How do I update my Node.js version (install the latest version)?
npm in Node.js
What is npm in Node.js?
How do I find the npm (Node.js) version?
How do I update my npm version (install the latest version) ? | Node.js
File package.json in Node.js
Difference Between Tilde(~) and Lid(^) in package.json | Node.js
File package-lock.json in Node.js
"npm init" | Result: Creates an empty package.json file and populates that file with the default data | Node.js
"npm install package_name" | Result: Installs JavaScript Library (Package) | For example, run "npm install jquery" | will add the jQuery library to the node_modules folder | Node.js
"npm install" | Result: Installs the JavaScript libraries (packages) that are specified in the package.json | Node.js
"npm list -g" (see a list of all installed global packages) | Node.js
"npm install -g package_name" (global package install) | Node.js
"npm uninstall -g package_name" (global package removal) | Node.js
Run "npm run EvgenConvertCSS" | The package.json file like this: "scripts": {"EvgenConvertCSS": "node-sass --include-path scss 1.scss 1.css"} | Node.js
Run "npm run EvgenMyCommand" | The file package.json like this: "scripts": {"EvgenMyCommand": "mkdir AAA"} | Node.js
Run "npm run MyScript1" | The file package.json like this: "scripts": {"MyScript1": "npm run MyScript2"} | Node.js
watch option in npm scripts (watch for changes in files)
Debugging NodeJS
Debugging Node.js. Looking at variable values, function stack, breakpoints in Visual Studio Code
Writing Node.js application in a text editor (Notepad, Far)
New Node.js app (create the app in a text editor, run in the console)
Add the express package to the Node.js (in the Windows console)
Uploading an html file and displaying it on the screen in Node.js (creating an application in a text editor, launching it in the console)
Using the socket.io module
A simple application with socket.io in Node.js (creating an application in a text editor, running it in the console)
Writing Node.js project in Visual Studio Code
New Node.js project (create the project in Visual Studio Code)
Create a new Node.js project with websocket (create the project in Visual Studio Code) | client & server
Writing Node.js project in Visual Studio
New Node.js project (create the project in Visual Studio)
Add the express package to Node.js (in Visual Studio)
Uploading an html file and displaying it on the screen in Node.js (project in Visual Studio)
Chat (user writes a message and others get a message) using socket.io in Node.js (project in Visual Studio)
https localhost certificate
Create https localhost certificate for nodejs
How modules are arranged in Node.js (require, exports)
What are modules in Node.js ?
How the require function works inside and what happens when we write require("ModuleName") in Node.js
Creating your own module in Node.js
Writing and connecting your module to Node.js
Built-in Node.js modules
"Express" module Node.js !!!!!!!!!!!!
Hosting Node.js on your website
Hosting and installing Node.js on your website. Configuring Node.js in cPanel
In Node.js I change the js file, and the old cached js file is displayed. Restart Node.js on your website in cPanel
Add npm packages to the Node.js on your site (using cPanel)
Error during WebSocket handshake... Hosting Node.js on your website
Heroku.com free service. Running your Node.js app on Heroku.com
To use Heroku.com you need to install: Git, Node.js
Registration on the Heroku.com website
Installing the command line "Heroku CLI"
"Heroku CLI" is very slow for Windows
Running your Node.js app on Heroku.com
WWW sites for learning Node.js
Sites to learn Node.js

  Ваши вопросы присылайте по почте: info@dir.by