Introduktion till Node.js, vad det är och vad man kan använda det till, samt några av fördelarna mot andra server-implementationer.

Se kort presentation här.

Installation av Node.js

Ta hem senaste LTS från nodejs.org (v12.16.1). Om ni redan har v12.x så behöver ni inte installera om.

Global object

Node’s “motsvarighet” till browserns Window-object.

https://nodejs.org/dist/latest-v12.x/docs/api/globals.html

  • console.log()
  • setTimeout()
  • setInterval()
  • __dirname
  • __filename

require/exports

require letar i node_modules om man inte ger den en relativ eller absolut sökväg.

Moduler exporterar funktioner genom att hänga på dem på module.exports.

Tredjeparts-bibliotek

lodash

https://www.npmjs.com/package/lodash

require/exports vs import/export

The difference between “require(x)” and “import x”

https://stackoverflow.com/a/46677972/1342276

fs-module

API mot filsystemet.

https://nodejs.org/dist/latest-v12.x/docs/api/fs.html

  • readdir()
  • readFile()
  • writeFile()
  • unlink()
  • mkdir()
  • rmdir()
  • m.fl.

path-module

Hjälper oss med sökvägar.

https://nodejs.org/dist/latest-v12.x/docs/api/path.html

  • basename()
  • dirname()
  • extname()
  • parse()
  • m.fl.

Självstudier

Kolla på de videos jag lagt upp i spellistan

Node Event Emitter

OBS! Man behöver inte längre använda en funktion för att skapa en ”klass”, och inte heller utils för att ärva från EventEmitter-klassen.

Se den gist jag skapat här till er:

https://gist.github.com/drblue/b2a99de856076f60059b26330e474d98


Clients and Servers


Creating a Server

Obs, en lite längre och kanske tydligare version av koden finns här:

https://gist.github.com/drblue/d753c9e2ad2579c04255e566be0a0618


Streams and Buffers


Readable Streams


Writable Streams

Pipes


Kategorier: Node.js