2017-05-08 47 views
0

我正在使用最新的angular/quickstart項目,它使用systemjs-angular-loader.js來加載應用程序的相關html模板(不需要moduleId屬性)。在生產中使用systemjs-angular-loader.js - 給出404

該項目在開發/測試(使用「npm start」服務頁面)中工作正常。但是,在使用gulp進行生產構建時,項目會恢復爲在根文件夾(而不是應用程序相對文件夾)中查找html模板。

在生產中使用/構建「systemjs-angular-loader.js」是否需要特殊步驟?我可以找到system-angular-loader.js的唯一參考文件是404s after updating to systemjs-angular-loader.js,這是我所遵循的,但沒有任何幫助。

爲了簡潔,我沒有包含我的gulpfile.js,但我使用了gulp-typescript和systemjs-builder(等等)。

+0

你見過這樣的:https://angular.io/docs/ts/latest/guide/deployment.html – DeborahK

+0

是看出。我沒有看到任何具體的問題(除非我錯過了什麼?)。 – Chet

回答

0

這可能不是您的案例的解決方案,但對於運行業力時有相同問題的其他人,您需要更新到最新的systemjs-angular-loader.js。

有最近的更改,從而解決外部模板沒有被加載:linkissue

對於此修訂工作確保模板文件是在同一文件夾作爲組件引用它,你有一個模板URL在

templateUrl的形式: './myComponent.component.html'

這是因爲systemjs-角裝載機檢查在第一個點ËtemplateUrl

if (url.startsWith('.')) { 
    resolvedUrl = basePath + url.substr(1); 
    }