2016-07-31 27 views
0

als Teil des Crash-Kurses zu Web-Entwicklung, habe ich versucht, Desktop-Anwendung mit Elektron mit angular2 einzurichten. Diese Art von Arbeit, gebündelt mit Webpack, läuft in Ordnung.Konfigurieren Hapi, Typoskript, Webpack, eckig2 für Elektron

Ich konfrontiert Problem, wenn ich versuchte, mit HAPI zu integrieren, das kläglich gescheitert. Was ich will, ist HAPI-Server von Elektronen laufen, so dass ich mit HTTP-Anfragen in UI interagieren kann. Webpack lehnt hapi zu packen und sagte, dass „Sie einen geeigneten Lader benötigen diese Art von Datei zu handhaben“ ..

Ich dachte, ich direkt HTTP-Anfragen in UI ernähren könnte ...

Ist es möglich, bei alles um HAPI im Webbrowser zu betreiben? Sollte ich es als separates Modul auf Elektronenebene (innerhalb main.js) laufen lassen?

iI haben Typisierungen für hapi installiert ist, hat nicht funktioniert ..

ich alle Sachen in Github setzen hier https://github.com/EvgenyMuryshkin/xassist

Danke, Grüße, Evgeny.

+0

Wenn man bedenkt, dass happy ein serverseitiges (Node-) Framework ist, um Webserver zu bauen, glaube ich nicht, dass man es innerhalb des Browsers ausführen kann. – toskv

Antwort

1

Sie können einen HTTP-Server framwework aus Elektron, entweder HTTP-Anfragen mit einer http-Client-Bibliothek machen, die im Browser wie

Alternativ können Sie einen Hapi-basierten Server mit Electron-App auf dem Client-Rechner lokal ausführen, egal wie hapi im Browser nicht funktionieren kann.

+0

Um Simons Antwort ein wenig zu erweitern, vermischen Sie Konzepte. Angular (JavaScript & HTML) sind statische Assets, die von etwas wie nginx bedient werden. Hapi ist ein serverseitiges NodeJS Framework a.k.a Server oder API mit dem gesamten Setup, das normalerweise als "full stack" bezeichnet wird und eine Datenquelle enthält. Ich benutze Angular2 & Hapi jeden Tag, aber die beiden laufen unabhängig voneinander und kommunizieren mit libs wie Simon erwähnte unter anderem wie Socket.io Hapi kann statische Assets dienen, aber das ist nicht das Elektronen-Framework, das am Ende ist, dient statische Vermögenswerte – d3viant0ne

+0

Ja gut put @ d3viant0ne –

+0

Ich verstehe, dass sie Server-und Client-Technologien sind, dachte ich nur, dass, wie es Desktop-Anwendung ist, kann ich beide ausführen, wie ich OWIN-Server in WPF Desktop-Anwendung ausführen kann .... wie auch immer, das war Spaß Übung .. Es gibt eine Möglichkeit, das mit Elektronenarbeitern zu tun, ich werde es versuchen .. Danke für die Hilfe. – Evgeny

0

Ich schaffte es tatsächlich, es wegen des Fehlers in meinem Code laufen zu lassen. Das ist wirklich bizzare Zufall, aber HAPI kann anscheinend in Electron (Browser) -Anwendung laufen.

Was ich getan habe ist, dass ich Webpack mit Ziel "Node-Webkit" verwendet, um meinen Servercode zu übertragen. Dann habe ich das Ergebnis JS direkt in den Browser eingefügt und es funktioniert. Das einzige Problem ist, wie Objekte zwischen ihnen übergeben werden - ich einfach alles in Fensterobjekt speichern, nicht wirklich gut Ansatz, aber sollte für meine Anwendung in Ordnung sein.