Met Node.js kunnen we eenvoudig webtoepassingen maken. Dankzij de node-webkit kunnen we nu ook desktop-apps ermee maken, met behulp van een unieke combinatie van HTML5 en Node.
De bibliotheek combineert de WebKit-engine en Node.js op een unieke manier. Zowel WebKit als Node delen dezelfde context, zodat u uw code kunt schrijven alsof het is bedoeld om te worden uitgevoerd in een browser, maar met de toevoeging van alle Node-functies.
De lijst met toepassingen is eindeloos. U kunt zakelijke apps, tekst- en afbeeldingseditors, games, presentaties, beheerderspanelen etc. maken. Noem alleen de desktop-app die u wilt maken en ik kan u verzekeren dat dit mogelijk is met node-webkit.
In deze zelfstudie laat ik u zien hoe u aan de slag kunt gaan door u te laten zien hoe u een eenvoudige teksteditor maakt.
Eerst moet je de bibliotheek pakken. Download de juiste versie voor uw besturingssysteem (de toepassing zelf wordt op alle versies uitgevoerd) vanuit github en pak het uit, waar u maar wilt. Laten we nu een basismapstructuur maken. We zullen mappen voor HTML-bestanden hebben (.html
) en voor JavaScript-bestanden (.js
). Maak ook de package.json
bestand in dezelfde map die de nw
uitvoerbaar bestand is in en een node_modules
map om de modules die we zullen maken te behouden.
Het eerste wat u moet doen, is de vereiste velden in de package.json
het dossier. In het geval van node-webkit zijn dit naam
en hoofd
(op Github vindt u de volledige lijst met beschikbare package.json
opties). De eerste is precies hetzelfde als in het geval van een eenvoudige Node.js-app. De tweede moet een (relatief of absoluut) pad naar het hoofd-HTML-bestand zijn dat bij het starten van de toepassing wordt weergegeven. In het geval van ons voorbeeld, de package.json
bestand zou er als volgt uit moeten zien:
"name": "simple-text-editor", "main": "./html/index.html"
Nu als u uw app uitvoert met behulp van de nw
uitvoerbaar, zou u een leeg scherm zoals dit moeten zien:
Het maken van de gebruikersinterface met behulp van node-webkit is niet anders dan het maken van een webpagina (met een klein verschil dat je de rendering-engine kent, dus je hoeft geen fallbacks te geven voor oudere browsers of bibliotheken zoals jQuery te gebruiken - en eigenlijk heb je zou niet moeten, omdat ze fallback-code bevatten die uw app zal vertragen). Laten we een maken index.html
bestand dat we zullen gebruiken:
Eenvoudige teksteditor
Laten we ook het belangrijkste JavaScript-bestand opnemen (en maken) dat we zullen gebruiken, dus het zal worden uitgevoerd nadat de DOM is geladen:
Het enige dat verandert wanneer je de app opent, is de titel.
Om je te laten zien hoe gemakkelijk je Node.js in node-webkit kunt gebruiken, kunnen we de inhoud van package.json
en print het op het scherm. Maak het js / main.js
bestand en plaats de volgende code erin:
var fs = require ('fs'); fs.readFile ('./ package.json', 'utf-8', functie (fout, inhoud) document.write (inhoud););
Zoals je ziet, ziet de code er exact hetzelfde uit alsof je hem voor Node schrijft. Maar dan gebruiken we document.write
om de inhoud van het bestand op de pagina te plaatsen. U hoeft geen lokale server in te stellen.
Open nu de app en je zou zoiets als dit moeten zien:
Er is nog iets leuks aan node-webkit; U hoeft geen reeks te vermelden >