0

私は Angular2 アプリを作成しています。メインの HTML は次のとおりです。

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8"/>
        <link rel="stylesheet" type="text/css" href="css/index.css">
        <title>App</title>
        <script src="./lib/traceur-runtime.js"></script>
        <script src="./lib/system.js"></script>
        <script src="./lib/angular2.dev.js"></script>
    </head>
    <body>

        <app></app>
        <script src="./js/bootstrap.js"></script>

    </body>
</html>

私の目標は、すべてのファイルをローカルにロードすることです。そのため、これら3つのファイルをlibフォルダーに配置すると、ネットワークインスペクターで「es6-modules-loader @ 0.16.6.js」をそこからロードできないことがわかったので、そのファイルをインターネットからダウンロードして配置しました「lib」フォルダにあります。その後、すべて正常に機能しました:)

しかし:

今日、ネットワーク接続がしばらく停止し、プロジェクトを実行できませんでした。実際には、ネットからさらに 2 つのファイルをロードしたためです。

https://github.jspm.io/jmcriffey/bower-traceur@0.0.87.js
https://github.jspm.io/jmcriffey/bower-traceur@0.0.87/traceur.js

system.js の最後に定義されているのがわかります。

私の質問は次のとおりです。どうすればすべてをローカルファイルシステムからロードできますか?

4

1 に答える 1

0

これは私のセットアップです。うまくいくことを願っています

このパッケージをすべて からインストールしましnpmた。

<script src="node_modules/traceur/bin/traceur-runtime.js"></script>
<script src="node_modules/systemjs/dist/system.js"></script>

<!-- alpha35 -->
<script src="node_modules/angular2/bundles/angular2.dev.js"></script>
<script src="node_modules/angular2/bundles/http.dev.js"></script>

これだけでは、systemjs は angular2 ファイルを見つけることができないため、System.config にパスを追加して、angular2 のファイルがどこにあるかを systemjs に伝える必要があります。

System.config({
    traceurOptions: {
        annotations: true,
        types: true,
        memberVariables: true
    },
    paths: {
       'angular2/*' : 'node_modules/angular2/*'
    },
    defaultJSExtensions: true // or you specify the .js
});

これは私のセットアップであり、必ずしも最高のものではありませんが、私にとってはうまくいきます.

お役に立てば幸いです。

于 2015-08-20T14:19:14.487 に答える