Skip to main content

Command Palette

Search for a command to run...

Igrarije s Javascript bibliotekama

Updated
0 min readView as Markdown

Ah te Javascript biblioteke, neodoljivo podsećaju na leptire. Egzotične, raznolike a obično im je i životni vek približne dužine!

JsJoke.jpg

Ovom prilikom neću govoriti o roku trajanja JS biblioteka, već o nečemu drugom. Dalje u nastavku..

next.jpg

Pre neki dan naidjoh na zanimljivu mathjs biblioteku. Nju neću puno objašnjavati (mada nije teško zaključiti iz njenog imena o čemu se radi), već ću se osvrnuti na neke od načina kako je koristiti u svom js projektu. Naravno ovakav pristup važi i za bilo koju drugu biblioteku. Postoji nekoliko načina, pa da krenemo od početka.

Skidanje fajla i ubacivanje linka

Skinuo sam fajl sa (https://mathjs.org) i prebacio ga u root folder svog projekta. Nakon toga sam u index.html fajl dodao link ka math.min.js fajlu.

01.PNG

Dodao mathjs funkciju u svoj index.js

a1.PNG

Pokrenuo u browseru. I radi! :)

13.PNG

Ovaj jednostavan način skidanja fajlova i ubacivanja linkova ka njima u svom html fajlu, ume da postane naporan kada treba tražiti određene biblioteke po netu, i svaku skidati i linkovati posebno.

Preko npm-a

Pošto ja imam node.js i npm instaliran na svojoj mašini pokrenuću komandu nmp init koja će nakon par pitanja kreirati konfiguracioni package.json fajl koji će sadržati informacije vezane za projekat. Zatim cu preko komandne linije (u package manager-ima se uglavnom sve radi preko nje) instalirati math.min.js

npm install mathjs

Nakon ove komande mogu videti da je u mom package.json fajlu u dependencies dodat mathjs

04.PNG

Sada umesto starog linka ću ubaciti novi ka nod modulima gde se mathjs sada nalazi.

05.PNG

I sve ponovo radi! :)

package.json fajlovi su veoma korisni, zato sto se ogromni node_modules folder moze lako deliti izmedju vise ljudi bez deljenja tog foldera (dovoljan je package.json i nakon npm install komande svi paketi će biti instalirani). Ono što može da bude naporno jeste traženje paketa po folderu u kom se nalaze node moduli i ubacivanje linkova do njih.

Preko Webpack-a

Ovakav način podrazumeva kreiranje jednog krajnjeg fajla u kojem će bit upakovani svi ostali fajlovi. Ovo se može uraditi i preko Rollup ili Parcela (nećemo sad o njima), ali ja ću pokušati korišćenjem Webpack-a. Hajde da probamo koristeći import sintaksu.

a2.PNG

07.PNG

Hmm, browser ne prepoznaje import i zato će nam trebati webpack koji će izbandlovati sve fajlove u kojima se nalazi import u poseban novi fajl koji će browser umeti da pročita. Da probamo...

Instaliraću webpack komandom npm install --save-dev webpack kao i webpack-cli koji omogućava korišćenje webpack-a iz komandne linije npm install --save-dev webpack-cli (oni su i sami npm paketi). Nakon instalacije oba paketa ce biti vidljiva u package.json fajlu.

08.PNG

Ručno ću napraviti konfiguracioni webpack fajl za instrukcijama za ulazni i izlazni fajl

09.PNG

I dodati komandu za skriptu u package.json-u koja će kreirati jedan finalni fajl spreman za browser.

10.PNG

Nakon pokretanja komande npm run build iz komandne linije, mogu da primetim kreiran dist/main.js fajl u root folderu moje aplikacije. Link ka njemu ću staviti u moj index.html fajl

11.PNG i probati ponovo.

12.PNG

Ovoga puta nema error-a. Dodao bih još samo da je ovo i način koji je preporučljiv, a jedan od razloga je što varijable u modulima imaju takozvani lexical scope u odnosu na globalni koji imamo u klasičnim skriptama.

212 views

More from this blog

Блогић

8 posts