2016-06-13 62 views
11

我是新來Angular 2,我知道上託管Angular 1.x共享主機像GoDaddy,但我不知道如何發佈Angular 2應用,例如我有這種結構的文件夾:託管角2應用

angular2-quickstart 

--app 
    app.component.ts 
    main.ts 

--node_modules 

--typings 

index.html 
package.json 
styles.css 
systemjs.config.js 
tsconfig.json 
typings.json 

我需要在FTP上傳什麼文件?

我沒有試過任何東西,因爲我不知道如何進行
在此先感謝!

+1

你好,你可以上傳urad角2項目在godaddy? –

+0

除了在index.html文件中導入幾個JavaScript文件以在客戶端成功運行angular2應用程序之外,您不需要其他任何東西。 檢查這個活生生的例子 https://angular.io/resources/live-examples/quickstart/js/plnkr.html 從那裏下載它,並在你的共享主機將其解壓到你所需的文件夾,這就是全部。 – user1685442

+0

這也可以幫助解決這個問題。 「如何捆綁Angular2的生產」> http://stackoverflow.com/q/37631098/4155124 –

回答

5

如果您沒有後端,免費託管網站通常會尋找index.html開始他們的工作。因此,你的文件夾結構是正確的,但你需要上傳js文件而不是ts文件。

5

作爲一種基於組件的語言,角2在其部署過程中包含一些注意事項。 首先,開發環境中使用的文件不一定會發送到生產環境。總之,你只需要上傳.js,.html和.css文件。

二是,即使你的應用程序的工作部署只有文件提到上述,它的建議包括以下過程:

捆綁:編譯所有的.js文件到單個文件。例如,vendor.js可以包含所有第三方庫,bundle.js將包含所有應用程序.js文件。 (由於性能原因,捆綁包是進口的,但請記住,隨着http 2的到來,此過程將被廢棄)

縮小:這是所有網絡應用程序中的標準過程,但現在只能縮小捆綁文件。

看一看這篇文章,因爲它提供了一些可以幫助您部署過程的工具示例。 http://www.ninjaducks.in/hacking/angular-setup/

5

我認爲一個流行的工作流程是將您的.ts文件吞入打字並將生成的.js文件發送到分發文件夾。許多.js文件也可以被「吞噬連接」(gulp-concat)爲一個文件。

當然你也需要發送你的html和css文件。

由於Angular2庫在很大程度上依賴於node_modules文件夾中的內容,因此您需要將package.json和npm install上載到服務器端。您可以嘗試上傳node_modules,但上傳需要很長時間。

1

您需要使用像webpack或angular-cli這樣的工具來構建angular2項目,該工具也使用webpack post beta.14發佈。 Webpack將創建一個分發目錄 - dist - 您可以將其部署到服務器。 Webpack將所有代碼捆綁到一個放在dist文件夾中的單個文件中。這裏有一個很好的資源來了解angular2應用程序的代碼和部署結構:https://github.com/mirkonasato/angular2-course-webpack-starter

克隆上述目錄,運行「npm install」安裝所有依賴項並運行「npm run build」,您將看到分發文件夾 - dist - 您可以部署。

0

那麼,你可以在你的根應用程序目錄中運行ng build。它將創建一個包含應用程序和文件的dist目錄。你可以把這個目錄放到網頁上,網頁服務器將尋找index.html

+0

請顯示/解釋如何以及爲什麼這個答案是問題。 – toonarmycaptain

+0

查看https://angular.io/guide/deployment。 ** bold **'ng build'腳本生成角度應用程序的「部署版本」。此頁面還具有需要對託管應用程序的服務器執行的配置。 @ user6449413顯示的結構是開發代碼,它也可以運行,但不應該發佈到託管服務器。 – Max