2016-04-30 46 views
1

我有一個使用SystemJS加載器的TypeScript編寫的AngularJS 2.0應用程序。當我運行應用程序,我得到以下404錯誤:如何去調試SystemJS問題?

404 GET /node_modules/ponyfill/package.json 

現在,據我所知,沒有模塊對ponyfill的依賴。我還有其他的AngularJS應用程序,它們的工作方式相當類似。但我無法弄清楚這個應用程序有什麼區別。你將如何處理調試這樣的問題?有沒有工具?

P.S.我找到了一個名爲SystemJS Debugger的工具,但文檔不是很清楚。

P.S.我SystemJS配置是這樣的:

System.config({ 
    "defaultJSExtensions": true, 
    "packageConfigPaths": [ 
     "/node_modules/*/package.json" 
    ], 
    "paths": { 
     "main": "/main", 
     "angular2/*": "/angular2/*", 
     "rxjs/*": "/rxjs/*", 
     "app/*": "/app/*", 
     "*": "/node_modules/*" 
    }, 
    "packages": { 
     "angular2": { 
      "defaultExtension": false 
     }, 
     "rxjs": { 
      "defaultExtension": false 
     } 
    } 
}); 

編輯

我發現,在配置上面packageConfigPaths是造成問題。這是使SystemJS變得不合時宜並且在運行時開始尋找package.json文件的問題。如果我刪除它,問題就會消失。我沒有在任何地方找到packageConfigPaths。任何人都知道它的作用。我只是從模板中複製它。

編輯2

我已經把我在Github上完整的應用程序,使任何人都可以重現此問題。存儲庫是https://github.com/archfirst/angular2-minimal-app。應用程序應該與簽入的代碼完美匹配。要重現此問題,只需編輯index.html並取消註釋packageConfigPathspaths SystemJS配置的屬性即可。

回答

1

看起來像錯字,嘗試重命名ponyfill到填充工具

+0

絕對不是錯字。我查看了node_modules包,並且有幾個實例。你也可以谷歌。 – Naresh

+0

放在這裏package.json – IgorL

+0

請參閱我的編輯2.我已經提供了完整的項目,以便您可以重現此問題。謝謝。 – Naresh

0

我最近遇到了類似的問題。該解決方案(如角RC 1)是包括rxjs 系統:

<script src="node_modules/systemjs/dist/system.src.js"></script> 
 
<script src="node_modules/rxjs/bundles/Rx.min.js"></script>

後,重新安排這些腳本標記,這個問題就解決了。希望這可以幫助。