×
=0) { let js = text.slice(pos1, pos2); + '<\/' + "script" + '>'; arrText.push(js); // next pos1 = pos2; continue; } } } break; } return arrText; } function OpenDialog(parentDiv, urlContent) { parentDiv = document.getElementById('modal-background'); // new !!!!!!! parentDiv.appendChild(document.getElementById('modal-template')); document.getElementById('modal-background').style.display = "block"; document.getElementById('modal-template').style.display = "flex"; // !!!!! document.getElementById('modal-body').innerHTML = ""; post_url(urlContent, "", function(text_from_server) { var element = document.getElementById('modal-body'); element.innerHTML = text_from_server; // add scripts var arrJSText = get_scripts(text_from_server); for (var i=0; i
dir.by
Поиск
Программирование, разработка, тестирование
→
Node.js (это web сервер исполняющий js файлы)
→
npm в Node.js
→
Файл package-lock.json в Node.js
Посмотрели
5994
раз(а)
Файл package-lock.json в Node.js
последнее обновление: 23 июля 2020
Файл
package-lock.json
обновляется, когда мы вызываем
npm install
или
npm install имя_пакета
.
То есть файл
package-lock.json
обновляется при установке Node.js пакетов.
Файл
package-lock.json
используется с момента появления npm версии 5. Он создаётся
автоматически при установке
Node.js
-пакетов. Что это за файл? Возможно, вы не знакомы с ним даже
если знали о
package.json
, который существует гораздо дольше него.
Цель файла
package-lock.json
заключается в отслеживании точных версий установленных пакетов, что позволяет
сделать разрабатываемый продукт стопроцентно воспроизводимым в его исходном виде даже в
случае, если те, кто занимается поддержкой пакетов, их обновили.
Файл
package-lock.json
решает весьма специфическую проблему, которая не решается средствами
package.json
.
В package.json
можно указать, какие обновления некоего пакета вам подходят (патч-версии или
минорные версии) с использованием вышеописанных спецификаторов версий.
В
Git
не коммитят папку
node_modules
, так как обычно она имеет огромные размеры.
Когда вы пытаетесь воссоздать проект на другом компьютере, то использование команды
npm install
приведёт к тому, что, если, при использовании спецификатора
~
в применении к версии некоего пакета,
вышел его патч-релиз, установлен будет не тот пакет, который использовался при разработке, а
именно этот патч-релиз. То же самое касается и спецификатора ^. Если же при указании версии пакета
спецификаторы не использовались, то будет установлена именно его указанная версия и проблема, о
которой идёт речь, окажется в такой ситуации неактуальной.
Итак, кто-то пытается инициализировать проект, пользуясь командой
npm install
. При выходе новых
версий пакетов окажется, что этот проект отличается от исходного. Даже если, следуя правилам
семантического версионирования, минорные релизы и патч-релизы не должны содержать в себе
изменений, препятствующих обратной совместимости, все мы знаем, что ошибки способны проникать
(и проникают) куда угодно.
Файл
package-lock.json
хранит в неизменном виде сведения о версии каждого установленного
пакета и
npm
будет использовать именно эти версии пакетов при выполнении команды npm install.
Эта концепция не нова, менеджеры пакетов, применяемые в других языках программирования (вроде
менеджера Composer в Python) используют похожую систему многие годы.
Файл
package-lock.json
нужно отправить в Git-репозиторий, что позволит другим людям скачать
его в том случае, если проект является общедоступным, или тогда, когда его разработкой занимается
команда программистов, или если вы используете Git для развёртывания проекта.
Версии зависимостей будут обновлены в
package-lock.json
после выполнения команды
npm
update
.
← Предыдущая тема
Разница между тильдой(~) и крышкой(^) в package.json | Node.js
Следующая тема →
"npm init" | Результат: создает пустой файл package.json и заполняет этот файл данными по умолчанию | Node.js
Ваши Отзывы ... комментарии ...
Вашe имя
Ваш комментарий
(www ссылки может добавлять только залогиненный пользователь)
+ картинку
Объявления
Объявления
•
Что такое Node.js ?
•
Как узнать версию Node.js ?
•
Установка Node.js (скачиваем и устанавливаем для Windows)
•
Как обновить версию Node.js (установить последнюю версию) ?
npm в Node.js
•
Что такое npm в Node.js?
•
Как узнать версию npm (Node.js) ?
•
Как обновить версию npm (установить последнюю версию) ? | Node.js
•
Файл package.json в Node.js
•
Разница между тильдой(~) и крышкой(^) в package.json | Node.js
•
Файл package-lock.json в Node.js
•
"npm init" | Результат: создает пустой файл package.json и заполняет этот файл данными по умолчанию | Node.js
•
"npm install имя_пакета" | Результат: устанавливает JavaScript библиотеку (пакет) | Например выполняем в командной строке "npm install jquery" | добавит jQuery библиотку в папку node_modules | Node.js
•
"npm install" | Результат: устанавливает JavaScript библиотеки (пакеты) которые указаны в файле package.json | Node.js
•
"npm list -g" (посмотреть список всех установленных глобальных пакетов) | Node.js
•
"npm install -g имя_пакета" (глобальная установка пакета) | Node.js
•
"npm uninstall -g имя_пакета" (глобальное удаление пакета) | Node.js
•
Выполняем в командной строке "npm run EvgenConvertCSS" | Файл package.json вот такой: "scripts": {"EvgenConvertCSS": "node-sass --include-path scss 1.scss 1.css"} | Node.js
•
Выполняем в командной строке "npm run EvgenMyCommand" | Файл package.json вот такой: "scripts": {"EvgenMyCommand": "mkdir AAA"} | Node.js
•
Выполняем в командной строке "npm run MyScript1" | Файл package.json вот такой: "scripts": {"MyScript1": "npm run MyScript2"} | Node.js
•
watch опция в npm скриптах (наблюдаем за изменениями в файлах)
Отладка NodeJS
•
Отладка Node.js. Смотрим значения переменных, стэк функций, breakpoints в Visual Studio Code
Пишем Node.js приложение в текстовом редакторе (Notepad, Far)
•
Новое Node.js приложение (создаем приложение в текстовом редакторе, запуск в console)
•
Добавляем express пакет в Node.js (в Windows console)
•
Загрузка html файла и вывод на экран в Node.js (создаем приложение в текстовом редакторе, запуск в console)
Используем модуль socket.io
•
Простое приложение с socket.io в Node.js (создаем приложение в текстовом редакторе, запуск в console)
Пишем Node.js проект в Visual Studio Code
•
Новый Node.js проект (проект создаем в Visual Studio Code)
•
Создаем новый Node.js проект с websocket (проект создаем в Visual Studio Code) | client & server
Пишем Node.js проект в Visual Studio
•
Новый Node.js проект (проект создаем в Visual Studio)
•
Добавляем express пакет в Node.js (в Visual Studio)
•
Загрузка html файла и вывод на экран в Node.js (проект в Visual Studio)
•
Chat (пользователь пишет сообщение и у других появляется сообщение) используя socket.io в Node.js (проект в Visual Studio)
https localhost certificate
•
Create https localhost certificate for nodejs
Как устроены модули в Node.js (require, exports)
•
Что такое модули в Node.js ?
•
Как устроена внутри функция require и что происходит когда пишем require("Имя_Модуля") в Node.js
Создаем свой модуль в Node.js
•
Пишем и подключаем свой модуль в Node.js
Встроенные модули Node.js
•
'Express' модуль Node.js !!!!!!!!!!!!
Хостинг Node.js на вашем сайте
•
Хостинг и установка Node.js на вашем сайте. Настройка Node.js в cPanel
•
В Node.js меняю js файл а отображается старый кэшированный js файл. Перезапустить Node.js на вашем сайте в cPanel
•
Добавляем npm пакеты в Node.js на вашем сайте (используем cPanel)
•
Error during WebSocket handshake... Хостинг Node.js на вашем сайте
Heroku.com бесплатный сервис. Запуск вашего Node.js приложения на Heroku.com
•
Для использования Heroku.com нужно установить: Git, Node.js
•
Регистрация на сайте Heroku.com
•
Инсталяция коммандной строки "Heroku CLI"
•
"Heroku CLI" работает очень медленно для Windows
•
Запуск вашего Node.js приложения на Heroku.com
WWW сайты для изучения Node.js
•
Сайты для изучения Node.js
Ваши вопросы присылайте по почте:
info@dir.by