2017-02-09 75 views
0

這裏是我的進口index.html的app.module.ts 404(未找到)在角2 systemjs

<script src="https://unpkg.com/core-js/client/shim.min.js"></script> 

    <script src="https://unpkg.com/[email protected]?main=browser"></script> 
    <script src="https://unpkg.com/[email protected]/dist/system.src.js"></script> 
    <script src="https://cdn.rawgit.com/angular/angular.io/b3c65a9/public/docs/_examples/_boilerplate/systemjs.config.web.js"></script> 
    <script> 
     System.import('main.js').catch(function(err){ console.error(err); }); 
    </script> 

我得到錯誤:應用程序/ app.module.ts 404 (未找到)

這是我的文件夾意象結構:

- app 
    - app.module.ts 
    - app.compontent.ts 
- main.ts 

奇怪的是,當everyting是相同的文件夾下(像這樣):

- angular2 
    - app 
    - app.module.ts 
    - app.compontent.ts 
    - main.ts 

現在一切正常。這是爲什麼?

main.ts文件:

import { platformBrowserDynamic } from '@angular/platform-browser-dynamic'; 
import { AppModule }    from './app/app.module'; 

platformBrowserDynamic().bootstrapModule(AppModule); 

tsconfig

{ 
    "compilerOptions": { 
    "baseUrl": "", 
    "declaration": false, 
    "emitDecoratorMetadata": true, 
    "experimentalDecorators": true, 
    "lib": ["es6", "dom"], 
    "mapRoot": "./", 
    "module": "commonjs", 
    "moduleResolution": "node", 
    "outDir": "../dist/out-tsc", 
    "sourceMap": true, 

    "inlineSources": true, 

    "target": "es5", 
    "typeRoots": [ 
     "../node_modules/@types" 
    ] 

    } 
} 

回答

0

我相信這是因爲 './' 開始在項目的根目錄下。也許當您刪除angular2文件夾時,根目錄已更改,因此main.ts導入無法找到應用程序目錄

+0

都能跟得上。奇怪.... – AngularOne

0

要導入.ts文件,您需要在程序包配置中配置默認​​擴展名。

SystemJS.config({ 
    packages: { 
    "app": { 
     "defaultExtension": "ts" 
    } 
    } 
}); 

然而,在你的榜樣,你似乎是進口main.js這是在你指定的目錄結構賠率當你寫

  • app
    • app.module.ts
    • app.compontent.ts
  • main.ts
相關問題