2017-10-13 118 views
1

什麼是使用包括外部腳本(實施例中使用externalLib.js)角應用的以下方式的不同,好處,優點和缺點:Angular2/Angular4 CLI外部庫包含

  1. 包括腳本參考直接進入通過腳本 標籤index.html文件:在scripts陣列
    <script src="../node_modules/jquery/dist/jquery.js"></script>

  2. 設置路徑的庫文件angular-cli.json
    "scripts": [ "../node_modules/path/to/lib/externalLib.js"]

  3. 包括externalLib.js文件的資產文件夾

另外,是否有任何的上述方法支持庫的強類型(即自動處理externalLib.d.ts

謝謝你的幫助。

+0

對於最後一個問題,加載外部js的方式與使用該庫類型無關。要加載類型,您必須安裝ex類型的庫。 'npm install @ types/jquery --save-dev'。如果你看看你的tsconfig.app.json它有''typeRoots「:[」node_modules/@ types「]',這將告訴打字稿編譯器在該文件夾中使用所有類型。旁註:通常在安裝打字稿庫時,這些類型將成爲依賴項,因此您不必手動安裝,但由於您正在加載外部腳本,因此很可能必須手動安裝類型 – LLai

回答

2
  1. 節點模塊文件夾將不會在您的輸出中,所以您引用js文件的路徑將無效。所以你需要在每次構建之後更改所有這個文件路徑。
  2. 如果您運行build命令,則本節中定義的所有文件將綁定到輸出中的一個文件。
  3. 這會將您的js文件包含在構建輸出中的資源文件夾中,因此需要單獨參考。沒有捆綁這種類型的文件。