Сообщения

Сообщения за июль, 2020

Руководство по Node.js

Изображение
Часть 1 Часть 2 Часть 3 Часть 4 Руководство по Node.js (en) REPL (Reading Evaluate Print Loop, цикл «чтение-вычисление-вывод») — это среда выполнения кода (обычно, окно терминала), которая принимает выражение, введенное пользователем, и возвращает результат вычисления этого выражения. Чтобы в неё войти, пишем в терминале node и нажимаем Enter REPL позволяет увидеть методы объекта Для этого в терминале пишем Math. (с точкой в конце) и нажимаем Tab Передача аргументов с помощью командной строки Если запустить скрипт вот так node index joe получить значение joe можно console. log ( process.argv. slice ( 2 )) Если выполним такой код process.argv. forEach (( val ,  index )  =>  {   console. log ( ` ${ index } :  ${ val } ` ) }) Получим 0: C:\Program Files\nodejs\node.exe 1: C:\Users\Admin\Desktop\node-test\index 2: 1111 Первый аргумент — полный путь команды node. Второй — полный путь исполняемого файла. Третий - аргумент, переданный в ком

Node Weather CLI

Изображение
CLI - Command Line Interface - интерфейс командной строки. CLI-приложение выводит данные в консоль. Создадим приложение, которое выводит в консоль погоду указанного города Устанавливаем модуль weather-js  https://www.npmjs.com/package/weather-js Подключаем его и используем const  weather  =   require ( 'weather-js' ); weather. find ({search:  'San Francisco, CA' , degreeType:  'C' },  function ( err ,  result ) {    if (err) console. log (err);   console. log ( `There is  ${ result[ 0 ].current.temperature } °C in San Francisco.\nFeels like  ${ result[ 0 ].current.feelslike } °C,  ${ result[ 0 ].current.skytext. toLowerCase () } .\nTomorrow will be  ${ result[ 0 ].forecast[ 0 ].low }  -  ${ result[ 0 ].forecast[ 0 ].high } .\nHave a nice day!` ); }); Определим город и страну пользователя. Для этого устанавливаем и используем модуль readline-sync  https://www.npmjs.com/package/readline-sync const  readlineSync  =   require ( '

Node Telegram

Изображение
Переходим по ссылке  https://telegram.me/botfather В Телеграмме открывается BotFather со списком команд Кликаем по команде /newbot Указываем имя бота, в моём случае @T2TestBot получаем идентификатор Пишем код const  beeper  =   require ( 'beeper' ); process.env.NTBA_FIX_319  =   1 ; const  TelegramBot  =   require ( 'node-telegram-bot-api' ); const  token  =   'My token' ; const  bot  =   new   TelegramBot (token, {polling:  true }); bot. on ( 'message' ,  function  ( msg ) {      const  chatId  =  msg.chat.id;     console. log ( "\x1b[36m%s\x1b[0m" ,  "Имя: "   +  msg.from.first_name);     console. log ( "\x1b[33m%s\x1b[0m" ,  "Сообщение: "   +  msg.text);      beeper ( 2 );     bot. sendMessage (chatId,  "Hello! " , {caption:  "I'm a bot!" }); }); Здесь установлены и подключены два модуля - beeper для звукового сигнала - node-telegram-bot-api для п

Node Hero

Изображение
https://github.com/irinainina/node.js/tree/node-hero Модули Структура проекта ├── app   | ├── calc.js   | └── index.js  ├── index.js  └── package.json index.js Подключаем файл app.js из папки app require ( './app/app' )  app.js const  sum  =   require ( './calc' ) const  numbersToAdd  =  [ 3 ,  4 ,  10 ,  2 ] const  result  =   sum (numbersToAdd) console. log ( `The result is:  ${ result } ` ) calc.js function   sum  ( arr ) {    return  arr. reduce (( a ,  b )  =>  a  +  b,  0 ) } module . exports   =  sum NPM Установим библиотеку lodash npm install lodash Подключаем и используем const  _  =   require ( 'lodash' ) const  res  =  _. assign ({  'a' :  1  }, {  'b' :  2  }, {  'c' :  3  }); console. log (res) // { a: 1, b: 2, c: 3 } Асинхронность Синхронное чтение файла const  fs  =   require ( "fs" ); const  path  =   require ( "path" );

Geekbrains Node JS. Урок 1. Знакомство с Node.js

Изображение
Устанавливаем модуль ansi npm install ansi В файле app.js пишем код const  ansi  =   require ( "ansi" ); const  cursor  =   ansi (process.stdout); cursor. beep (); Запускаем node app Домашнее задание Создать с помощью Node.js API консольную программу, которая будет выводить что-либо в консоль разными цветами и издавать звук(и) с помощью модуля или модулей, отличных от рассмотренного на уроке // 1 https://www.npmjs.com/package/ansi const  ansi  =   require ( "ansi" ); const  cursor  =   ansi (process.stdout); cursor   . red ()    .bg. grey ()    . write ( "Hello World!" )    .bg. reset ()    . write ( "\n" );  // 2 https://libraries.io/npm/beepbeep const  beepbeep  =   require ( "beepbeep" ); beepbeep ( 3 ,  1000 ); // 3 https://www.npmjs.com/package/cli-color const  clicolor  =   require ( "cli-color" ); console. log (clicolor. red ( "Text in red" )); console

Простой чат на node.js

Изображение
Источники: https://github.com/bezzad/Simple-broadcast-chat-nodejs-socket.io http://falbar.ru/article/razrabatyvaem-prostoj-chat-s-pomoshhyu-nodejs-i-socketio https://medium.com/freecodecamp-russia-русскоязычный/создание-простого-приложения-для-чата-с-помощью-node-js-и-socket-io-eb7498391611 Настройка среды разработки Создаём папку node-chat Открываем в vsc, в терминале выполняем команду npm init -y Устанавливаем пакеты - socket.io npm install socket.io - express npm install express - nodemon npm install  nodemon - ejs npm install ejs В файле package.json пишем код    "scripts" : {      "start" :  "node app" ,      "dev" :  "nodemon app"   } Это позволит запускать приложение командой npm run dev Создаём файл app.js - стартовая точка нашего приложения пишем в app.js тестовый код const  http  =   require ( "http" ); const  server  =  http. createServer (( request ,  resp

NodeJS. Part3. Express.js

Изображение
Код https://github.com/irinainina/node.js/tree/module3 Урок 1. Настройка приложения Быстрое создание проекта npm init -y Мы соглашаемся со всеми предлагаемыми полями по умолчанию Устанавливаем фреймворк Express.js npm install express В файле package.json в поле dependencies появилась запись об установленной версии express    "dependencies" : {      "express" :  "^4.17.1"   } Устанавливаем модуль nodemon для обновления данных на серверу без перезагрузки npm i -D nodemon Флаг -D (-dev) означает, что модуль устанавливается только для разработки и в конечный продукт не войдёт. Флаг -S (-save), что модуль будет работать и в самом приложении тоже. Информация о nodemon прописывается в файле package.json в поле devDependencies    "devDependencies" : {      "nodemon" :  "^2.0.4"   } Создаём файл index.js, подключаем фреймворк Express.js const  express  =   require ( 'express' )