2016-07-31 114 views
0

作爲網頁開發速成課程的一部分,我嘗試使用angular2設置電子桌面應用程序。 這種工作,捆綁webpack,運行正常。配置hapi,打字稿,webpack,angular2電子

當我嘗試與HAPI集成時,我遇到了問題,它失敗了。 我想要的是從電子運行HAPI服務器,這樣我就可以在UI中與http請求進行交互。的WebPack拒絕收拾高致病性禽流感,說 「您可能需要適當的加載程序來處理這種類型的文件」 ..

我以爲我可以直接喂HTTP請求到UI ......

是否有可能在所有在網頁瀏覽器中運行HAPI? 我應該在電子級別(main.js內)將它作爲單獨的模塊運行嗎?

II已經安裝了高致病性禽流感分型,並沒有工作..

我把所有的東西在這裏github上, https://github.com/EvgenyMuryshkin/xassist

感謝, 問候, 葉夫根尼。

+0

考慮到happy是構建web服務器的服務器端(節點)框架,我認爲您不能在瀏覽器中運行它。 – toskv

回答

1

不能使用HTTP服務器framwework從電子內,要麼使一個HTTP客戶端庫,可以在瀏覽器中,如

或者用電子應用程序部署一個基於hapi的服務器以在客戶端機器上本地運行,無論哪種方式hapi都無法在瀏覽器中工作。

+0

爲了擴展Simon的答案,你正在混淆概念。 Angular(JavaScript和HTML)是由nginx等服務提供的靜態資產。 Hapi是服務器端NodeJS框架a.k.a服務器或API,整個設置通常被稱爲「完整棧」,其中包括一個數據源。我每天都會使用Angular2&Hapi,但兩者互相獨立運行,並使用像Simon提到的libs進行通信,例如Socket.io Hapi可以提供靜態資產,但不包括最終的電子框架,靜態資產 – d3viant0ne

+0

好的@d3viant0ne –

+0

我知道他們是服務器和客戶端技術,我只是認爲它是桌面應用程序,我可以同時運行,就像我可以在WPF桌面應用程序中運行OWIN服務器一樣....無論如何,那是有趣的練習..有一些方法可以做到這一點與電子工作者,我會試一試..謝謝你的幫助。 – Evgeny

0

由於我的代碼中的錯誤,我實際上設法使它運行。這真是非常棒的巧合,但HAPI顯然可以在Electron(瀏覽器)應用程序中運行。

我所做的是我用目標「node-webkit」的webpack來傳輸我的服務器代碼。然後我將結果JS直接包含到瀏覽器中,並且可以正常工作唯一的問題是如何在它們之間傳遞對象 - 我只是將所有內容存儲在窗口對象中,並不是很好的方法,但對我的應用程序應該沒問題。