Различия
Показаны различия между двумя версиями страницы.
| Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
|
node.js [2024/05/18 12:20] tro |
node.js [2024/06/22 09:30] (текущий) tro |
||
|---|---|---|---|
| Строка 3: | Строка 3: | ||
| * Починаючи установку, | * Починаючи установку, | ||
| * [[https:// | * [[https:// | ||
| - | ====== Налаштування ====== | ||
| - | ===== Версія node.js ===== | + | * [[Налаштування |
| - | < | + | * [[Скрипти |
| - | node --version | + | * [[Операції з файловою системою в Node.js]] |
| - | </ | + | * [[Операції з базами даних в Node.js]] |
| - | ===== Версія NPM (пакетний менеджер) ===== | + | * [[Пагінація]] |
| - | < | + | |
| - | npm --version | + | * [[Бібліотеки |
| - | </ | + | |
| - | ===== Ініціалізація нового проекта ===== | + | |
| - | < | + | |
| - | npm init -y | + | |
| - | </ | + | |
| - | Ця команда створить файл package.json у корені вашого проєкту, який автоматично заповниться дефолтними метаданими. | + | |
| - | ===== Налаштування додаткові===== | + | |
| - | Тепер необхідно виконати початкове налаштування і конфігурацію npm, встановивши ім' | + | |
| - | Щоб встановити ім' | + | |
| - | < | + | |
| - | npm config set init.author.name " | + | |
| - | </ | + | |
| - | < | + | |
| - | npm config set init.author.email " | + | |
| - | </ | + | |
| - | ===== Вказаня якою версію використовувати ===== | + | |
| - | < | + | |
| - | nwm use 20 | + | |
| - | </ | + | |
| - | + | ||
| - | ===== Встановлення залежностей ===== | + | |
| - | Наступним кроком після ініціалізації | + | |
| - | Папку node_modules ніколи не додають до системи контролю версій (не завантажують в репозиторій на github), у всіх розробників вона буде своя. Під час ініціалізації проєкту Vite було створено | + | |
| - | < | + | |
| - | npm install | + | |
| - | </ | + | |
| - | ===== Типи залежностей ===== | + | |
| - | Залежностями проєкту деякі будуть використані у фінальному продукті, | + | |
| - | Саме для цього команди **npm install** і **npm uninstall** мають два прапорці. | + | |
| - | * --save — вказує, | + | |
| - | * --save-dev — вказує, | + | |
| - | Якщо не вибирати прапорець, | + | |
| - | + | ||
| - | ===== Встановлення пакетів ===== | + | |
| - | Залежність (npm пакет) — це різноманітні утиліти та бібліотеки, | + | |
| - | NPM складається з трьох основних | + | |
| - | * Реєстр пакетів (registry) — велика загальнодоступна база даних інструментів розробки (пакетів). | + | |
| - | * Сайт | + | |
| - | * Інтерфейс командного рядка (CLI) — запускається з терміналу і надає набір команд для роботи з реєстром і пакетами. Дозволяє створювати скрипти для запуску в терміналі. | + | |
| - | Команда npm install [package-name] або її короткий псевдонім npm i [package-name] встановить бібліотеку як залежність проєкту. | + | |
| - | < | + | |
| - | npm i validator | + | |
| - | </ | + | |
| - | ===== Видалення пакетів ===== | + | |
| - | Крім того, що ми видалимо код, який використовує бібліотеку, | + | |
| - | Ми можемо видалити будь-яку залежність командою npm uninstall | + | |
| - | < | + | |
| - | npm uninstall validator | + | |
| - | </ | + | |
| - | ===== Термінали ===== | + | |
| - | Краще використовувати **GitBush** | + | |
| - | ====== Скрипти ====== | + | |
| - | + | ||
| - | ===== Автоматизація виконання | + | |
| - | Досить незручно кожен раз, коли ми змінюємо код, виконувати JavaScript-код вручну та перезапускати сервер, | + | |
| - | + | ||
| - | Встановіть їх як залежності розробки командою: | + | |
| - | < | + | |
| - | npm install --save-dev nodemon | + | |
| - | </ | + | |
| - | Nodemon - інструмент для розробки на Node.js, який дозволяє автоматично перезапускати сервер після змін у вихідних | + | |
| - | + | ||
| - | + | ||
| - | Додайте скрипт | + | |
| - | < | + | |
| - | " | + | |
| - | " | + | |
| - | } | + | |
| - | </ | + | |
| - | Тепер ви можете запускати ваш додаток за допомогою команди npm run dev | + | |
| - | ====== Планіги для VSCode ====== | + | |
| - | [[eslint_-_dozvoljaje_zadati_pevnij_stil_napisannja_kodu_dlja_vsijeji_komandi| ESLint - Лінтінг | + | |
| - | ====== Модулі Node.js ====== | + | |
| - | ===== path ===== | + | |
| - | Модуль для роботи з шляхами до файлів під різні ОС. | + | |
| - | ==== join ==== | + | |
| - | Цей метод приймає аргументами рядки, які будуть перетворені у правильно форматований | + | |
| - | < | + | |
| - | import path from ' | + | |
| - | + | ||
| - | // приклад для побудови шляху з його частин | + | |
| - | const somePath = path.join(' | + | |
| - | // somePath буде ' | + | |
| - | + | ||
| - | // somePath буде ' | + | |
| - | + | ||
| - | </ | + | |
| - | ==== parse ==== | + | |
| - | Дозволяє отримати інформацію по шляху, який був переданий аргументом | + | |
| - | ===== fs ===== | + | |
| - | дає нам можливості працювати із файлами та папками | + | |
| - | * Синхронне виконання (погана швидкість) | + | |
| - | < | + | |
| - | import fs from ' | + | |
| - | const fileContent = fs.readFileSync(' | + | |
| - | </ | + | |
| - | * Асинхронна через кол-бек функцію (максимальна швидкість але погане читання коду) | + | |
| - | < | + | |
| - | import fs from ' | + | |
| - | + | ||
| - | fs.readFile(' | + | |
| - | /* ваш код */ | + | |
| - | }); | + | |
| - | </ | + | |
| - | * Асинхронна через проміси (середня швидкість але гарне читання коду) | + | |
| - | < | + | |
| - | import fs from ' | + | |
| - | const fileContent = await fs.readFile(' | + | |
| - | </ | + | |
| - | ==== readFile ==== | + | |
| - | асинхронного читання даних із файлу. | + | |
| - | < | + | |
| - | import fs from ' | + | |
| - | + | ||
| - | (async () => { | + | |
| - | | + | |
| - | const data = await fs.readFile(' | + | |
| - | console.log(' | + | |
| - | } catch (err) { | + | |
| - | console.error(' | + | |
| - | } | + | |
| - | })(); | + | |
| - | + | ||
| - | </ | + | |
| - | ==== writeFile ==== | + | |
| - | асинхронного запису даних у файл | + | |
| - | < | + | |
| - | import fs from ' | + | |
| - | + | ||
| - | // Записуємо дані у файл ' | + | |
| - | (async () => { | + | |
| - | const data = 'Це дані, які ми записуємо у файл.'; | + | |
| - | try { | + | |
| - | await fs.writeFile(' | + | |
| - | console.log(' | + | |
| - | } catch (err) { | + | |
| - | console.error(' | + | |
| - | } | + | |
| - | })(); | + | |
| - | + | ||
| - | </ | + | |