2016-04-01 8 views
1

システムモジュールが動作してノードモジュールを解決できない場合があります。systemjs:他のすべてをnode_modulesにマッピングします。

私はindex.htmlの中に次き

<script src="./system.config.js"></script> 
<script> 
    System.import('blast/test') 
      .then(null, console.error.bind(console)); 
</script> 

これは私の設定です:

System.config({ 
    baseUrl: '/', 
    packages: { 
     'app': { 
      defaultExtension: 'js', 
     } 
    }, 

    packageConfigPaths: ['./node_modules/*/package.json'], 

    paths: { 
     'blast/*': 'app/*' 
    } 
}); 

これは、これまで正常に動作します。しかし、私はlodashのようなノードモジュールも解決できるようにしたい。だから私は、これまでのパスを設定します。

paths: { 
    'blast/*': 'app/*' 
    '*': './node_modules/*' 
} 

今私はlodash罰金をインポートすることができますが、blast/testをインポートするとき、私は、エラー/app/test 404 (not found)を取得します。パッケージ構成がもう使用されていないようですが、この.jsは追加されません。誰でもこれを解決するためのヒントを得ましたか?私はSystemJs 0.19.25 Standardを使用しています。

おかげで、ロビン

答えて

3

は、ローカルパッケージ用ではなく、ここでマップ設定を使用してみてください -

System.config({ 
    map: { 
    blast: './app' 
    } 
}); 

./あなたがパスを使用node_modules/appパス(おそらく理由になるのURLスペースを区別する必要がありますここから始めるのですか?)

ワイルドカードパスエントリの代わりにbaseURL: 'node_modules'を使用することもお勧めします。

関連する問題