Node.js

Lesson 7, Advanced JS, Bondarchuk

by shurikation

JavaScript

// npm - NodeJS Packet Manager
// с помощью него можно устновить Vue тот же

//npm init - начать новый проект
//Далее - выираем имя
//Далее - версия
//Точка входа...
//Ок? Enter

//Появляется файл package.json
//В нем также можно указать фреймворки т.е. зависимости - т.е. узкать путь ко Вью

//npm install или i express

//Появилась графа dependenses - express и версия - ЭТО ПРЯМЫЕ ЗАВИСИМОСТИ

//Файл package-lock.json - указано более подробно версия заисимостей. И куча записей, то что требует экспресс, чтобы не было сбоя версий, если будете писать на более свежей версии.

//Папка Node Modules

//Установка сборщиков:
//npm i webpack --save-dev
//или
//npm i webpack -D

//Появилась графа devDependencies: - ЭТО ЗАВИСИМОСТИ ДЛЯ РАЗРАБОТКИ
//"webpack": 2.33.4

//Создаем server.js и пишем:

console.log('Hello world');

//Отличие в том, что на сервере нет никакого ДОМ, а так язык все тот же JS

// Чтобы запустить файл пишем в консоли:
// node server.js
//И он выведет в консоль терминала Hello World!

//Папка node_modeles - втсавляем gitignore - его не должно быть в репозитории!!!

//Подключаем модули, которые уже были установлены или вообще есть с помощью npm
const express = require('express'); //с помощью require
const fs = require('fs'); //Подключаем модуль - файловой системы

//catalog.json создаем файл

// ./ - значит ищу файл в текущей директории, а не где-то еще)
//кодировка
//функция обработчик (ошибка - если есть, то будет, если нет, то null)
//Данные - в дата
fs.readFie('./catalog.json', 'utf-8', (err, data) => {
	if(err) {
		console.error(err);
	}
		console.log('Содержимое файла', data); //Читаем
});
//И все выводим в консоль!


//Как что-то добавить?
fs.readFie('./catalog.json', 'utf-8', (err, data) => {
//... 
//Создаем товар
const item = {
      id: 5,
      title: "Хуета",
      price: 200,
      img: "https://rozetked.me/images/uploads/dwoilp3BVjlE.jpg"
 };

const parseData = JSON.parse(data); //Парсим данные из catalog.json
//По сути это массив
...