次のように、モジュールの 1 つが外部ライブラリ (rest) を使用するサンプル Angular2 アプリを作成しました。
/// <reference path="../../typings/tsd.d.ts" />
import rest = require('rest');
import jsonpClient = require('rest/client/jsonp');
import mime = require('rest/interceptor/mime');
...
利用した
tsd install rest
「typings」ディレクトリにrest.d.tsを配置し、使用しました
bower install rest
ランタイムバージョンを取得する (これはどこにも説明されていませんでした。私はこのようなことをしなければならないと思いますか?)
bower_components から 2 つのディレクトリ (「rest」とその依存関係「when」) を dist/lib にコピーするように gulp スクリプトをセットアップしました。
アプリ自体は正常にコンパイルされますが、ブラウザーでは、rest/when モジュールの依存関係を解決できません。
私が追加しました
System.config({
"baseURL": "/",
"transpiler": "traceur",
"paths": {
"components/*": "components/*.js",
"provider/*": "provider/*.js",
"services/*": "services/*.js",
"model/*": "model/*.js",
"rest": "lib/rest/rest.js",
"rest/*": "lib/rest/*.js",
"when": "lib/when/when.js",
"when/*": "lib/when/*.js",
"*": "lib/*.js"
}
});
私のindex.htmlファイルに、おそらくそのリストにファイルを追加し続けることができましたが、どういうわけかこれは...間違っていると感じています。
すべてのパッケージの内部ファイル構造を index.html にリストしなければならないというのは、確かに正しくありませんか? 「when」モジュールは、「./lib」で独自の依存関係を見つけることを想定していることがわかります。「rest」はまったく異なる構造を持っています。
だから、私の質問は次のとおりです。
bower (または npm) を介して管理される JavaScript パッケージを Angular2 のクライアント側にインポートする方法について、私は何を誤解していますか?
System.paths 内のすべてのモジュールのすべてのファイルをリストして機能させる必要がありますか?