Angular2 defaultExtension 中的 SystemJS 不起作用

SystemJS in Angular2 defaultExtension doesn't work

我的新 Angular2 应用程序有问题。我接下来在 index.html:

中调用主 boot 文件
SystemJS.config({
    packages: {
        app: {
            format: 'register',
            defaultExtension: 'js'
        }
    }
});

SystemJS.import('src/app/prod/boot').then(null, console.error.bind(console));

在我的控制台中我看到了一些错误:

如果我明确指定扩展名:

SystemJS.import('src/app/prod/boot.js').then(null, console.error.bind(console));

一切都会好的,但是我的组件内部有同样的问题,在没有指定扩展名的情况下导入另一个组件:

import {Component} from 'angular2/core';
import {ROUTER_DIRECTIVES, RouteConfig, RouteParams} from 'angular2/router';
import {AppComponent} from './app.component';

那是因为你的包裹不是app而是src/app。将 index.html 移动到 src 文件夹中,或者将 SystemJS 配置的包定义更改为:

SystemJS.config({
    packages: {
        'src/app': {
            format: 'register',
            defaultExtension: 'js'
        }
    }
});