2016-10-31 305 views
8

在問我的問題之前,我想告訴你,我是非常新的反應,直到現在我已經學會了的反應像組件,狀態,道具,路由器等非常基本的概念和可能這個問題很有趣,但我需要解決方案。如果我在某個地方錯了,請糾正我。在沒有服務器的情況下運行React應用程序

所以我的問題是,我們可以運行基於反應的應用程序,而無需在服務器上運行應用程序?基本上,我想要的是,我可以直接在web瀏覽器上使用index.html文件路徑,並開始工作。

我的理解是,React js是一個JavaScript庫,所有代碼最終都會使用babel加載器(如果我們使用ES6)轉換爲純JavaScript文件。所以我認爲應該可以做到這一點。

我發現我可以使用的WebPack在內部首先將我的陣營或基於其它JS文件到正常的JavaScript,並可以在進一步使用index.html文件使用一個單一的包文件。我試過這個,但只有一些功能工作正常狀態,道具,但許多其他功能不像反應路由器工作,但是當我使用npm服務器所有的功能開始工作正常。

現在爲什麼我想這樣做是因爲我想用反應js創建三星Tizen電視網絡應用程序我不認爲我可以使用npm服務器和所有。

如果有人有任何解決方案,這將是非常有益的。 謝謝

+1

請在投票前發表評論 –

回答

5

這幾個概念基本上都是你所需要的(加上lifecycles methods)。這就是爲什麼React搖滾,即使你擁有龐大而複雜的應用程序,也很容易思考和推理。


不做出反應而無需服務器的工作,只需添加腳本標記,並確保您使用JavaScript,當前的瀏覽器理解下載源作出反應和講JS和DOM有任何地方使用它。

<script src="https://unpkg.com/[email protected]/dist/react.js"></script> 
<script src="https://unpkg.com/[email protected]/dist/react-dom.js"></script> 

例如,Firefox使用反應他們的新devtools和這裏的提示,爲您節省很多的時間:它是非常容易使用與陣營內聯樣式,我想不出一個更好的工具來設計你的郵件模板。

+0

我覺得我做錯了什麼。我正在做的是首先使用webpack創建一個捆綁js文件,然後使用該js文件在瀏覽器上運行 –

+0

如果您導入或需要React,則不需要腳本標記,它已經存在。 – Solo

+0

是的,我用導入,但仍然不工作 –

2

我現在有同樣的問題,與默認react/react-router應用程序。 react-router也沒有爲我工作,而使用BrowserRouter。但我發現issue建議將BrowserRouter更改爲HashRouter。它解決了我的問題。要在仿真器上啓動應用程序(實際上是爲webOS編寫的),我將srcscript標記更改爲index.html,並將其保存到我的構建位置。

4

我加了以下建築前的package.json:發生反應端子輸出的

"homepage": "./", 

報價時建築:

該項目建成假設它在服務器根託管。 要覆蓋此項,請在您的包中指定主頁。JSON。 例如,添加它來構建它的GitHub頁面:

「主頁」:「http://myname.github.io/myapp」,

注:我敢肯定這不會在每一個項目上工作。

相關問題