2016-06-26 11 views
0

JSPMに大きな不満を抱いていますが、これは多くの最新の問題です。JSPMマップパスを正しく再配置しない依存関係について

私は経由JSPM経由angularfire2をインストールした - @angular依存関係をインストールしているはずである(はい、SUDOがSUDOないと動作しません!!。)sudo jspm install npm:angularfire2。生成されたパッケージJSONはthis-

"jspm": { 
    "dependencies": { 
    "angularfire2": "npm:[email protected]^2.0.0-beta.2" 
    }, 
    "devDependencies": { 
    "typescript": "npm:[email protected]^1.8.10" 
    } 
} 

のように見え、私はそれが正しくangularfire2.jsをインポート参照アプリケーションのページを更新したときに発生する設定がthis-

System.config({ 
    baseURL: "/", 
    defaultJSExtensions: true, 
    transpiler: "typescript", 
    typescriptOptions: { 
    "emitDecoratorMetadata": true 
    }, 
    paths: { 
    "github:*": "jspm_packages/github/*", 
    "npm:*": "jspm_packages/npm/*" 
    }, 

    packages: { 
    "app": { 
     "main": "./app.ts", 
     "defaultExtension": "ts" 
    } 
    }, 

    map: { 
    "angularfire2": "npm:[email protected]", 
    "typescript": "npm:[email protected]", 

    ... 

    "npm:[email protected]": { 
     "@angular/common": "npm:@angular/[email protected]", 
     "@angular/compiler": "npm:@angular/[email protected]", 
     "@angular/core": "npm:@angular/[email protected]", 
     "@angular/platform-browser": "npm:@angular/[email protected]", 
     "@angular/platform-browser-dynamic": "npm:@angular/[email protected]", 
     "firebase": "npm:[email protected]", 
     "rxjs": "npm:[email protected]" 
    } 

    ... 
    } 
}); 

のように見えるので、その後、インポートしよう。しかし、それがインポートしようとしているアドレスはhttp://localhost:8000/@angular/platform-browser-dynamic.jsです。間違ったパスです!私はそれが私のapp.tsの最初の行(そしてアプリケーションの出発点)にこの行-を持っているからだと思います。しかし、なぜJSPMはこれを正しくマップしていないのですか?これらのパッケージを個別にインストールする必要はありますか?もしそうなら、パッケージの依存関係はどうしてですか?

期待どおり:このインポートを解決するときは、/jspm_packages/npm/**アドレスを解決する必要があります。

Got:SystemJSは、Webルート/からパッケージをロードしようとします。

答えて

0

マップに次のものを手動で追加する必要があります。

"@angular/common": "npm:@angular/[email protected]", 
"@angular/compiler": "npm:@angular/[email protected]", 
"@angular/core": "npm:@angular/[email protected]", 
"@angular/platform-browser": "npm:@angular/[email protected]", 
"@angular/platform-browser-dynamic": "npm:@angular/[email protected]", 

本当の解決策であるかどうかはわかりませんが、それは機能しますか。 未来はここにあります。

関連する問題