問題タブ [systemjs]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 複数の baseurl を使用する ES6 非同期モジュール
ES6 モジュール システムは、CommonJs / AMD 構文を統合するのに適しているようです。requireJs/AMD ユーザーとして、ES6 モジュールに変換したいと考えています (今のところは babel.js を使用しています)。
ただし、1 つの問題があるようです。ドキュメントとチュートリアルを読んでみると、複数の baseurl に依存するモジュール パッケージをロードすることはできないようです。requireJs を使用すると、これは次のcontext
フィールドを使用して解決できます。
main.js で
plugin-lazyloading-deps.js 内
System
ES6 非同期モジュールのインポートでは、シングルトンであるため、これは不可能です。
私の質問は次のとおりです:ドキュメントに見逃したものがありますか(複数のbaseUrlを構成できるようにSystemをサブクラス化できます)、またはこれは将来のモジュール拡張のために機能するものですか?
javascript - system.js を別のフォルダーからインポートする
と がpublic/index.html
ありsrc/app.js
ます。
内部には、ロードindex.html
する次のsystem.js
呼び出しがありますapp.js
<script>System.import('../src/app');</script>
次のエラーで失敗します。
GET https://registry.jspm.io/src/app.js 404 (Not Found)
別のフォルダからファイルをロードするための構文は何ですか?
angular - jspm.io がローカル モジュールをリモートで検索しています
非常に奇妙な問題があります。以下のコードは正常に動作します。ただし、Angular スクリプトをローカルのスクリプトに変更すると、いつの間にか、
実行すると、ローカルの代わりに jspm.io でスクリプトを検索します。どうしてこれなの?
javascript - Jasmine テスト スイートに読み込まれるモジュールの新しいインスタンスを取得するように SystemJS を構成する方法
私たちはかなり長い間、RequireJS、Bower、および npm を使用してきました。今では、jspm と SystemJS に非常に感銘を受けています。
私たちは彼らが好きです:
- AMD と連携して、既存のコードを変換する手間を最小限に抑えます
- 新しい機能を利用して ES2015 モジュールを作成できるようにする
- 彼らが維持しているRequireJSと同様の構成ファイルがあります。
- bower に登録する必要のない Node と GitHub からライブラリをプルできるようにする
切り替えを妨げている唯一の理由は、Jasmine テスト スイートを含むモジュールにロードされる必要なモジュールの新しいインスタンスを SystemJS に提供するように指示する手段が必要なことです。
RequireJS では、createRequireContext をウィンドウに追加することでこれを行います。
そして、Jasmine テスト スイート内で createRequireContext を呼び出します。
beforeEach で新しいコンテキストを作成すると、すべてのテストに必要なモジュールが分離されます。beforeAll で新しいコンテキストを作成すると、必要なモジュールが他のテスト スイートで使用されないように分離されます。
SystemJS と jspm でこれを行う方法はありますか?
javascript - 既存のバンドルを使用するには、Systemsj で index.html を構成するにはどうすればよいですか?
バンドル ファイルの aurelia.io フレームワークを使用し、SystemJS を使用して構成された小さな TypeScript helloworld アプリケーションがあります。アプリを実行すると、コンパイル済みの typescript バージョンで次のhelloworld.ts
ようなエラーがスローされます。
関数define
が SystemJS によって宣言されているように見えるので、おそらくこれは構成の問題です。フレームワークは正常に読み込まれているようですが、systemjs 関数が認識されないのは非常に奇妙です。
これが私のプロジェクト階層と構成ファイルです。私は何を間違っていますか?
私のフォルダ構造は次のようになります。
jspm をインストールし、プロンプトに従ってデフォルトの config.js ファイルを作成しました。デフォルトから変更した唯一のオプションは、babel をトランスパイラーとして使用することでした。
私の config.js は次のようになります。
私の index.html は次のようになります。
私helloword.ts
はこのように見えます:
完全なエラー:
javascript - TypeScriptでSystem.jsモジュールをロードするには?
TypeScript をデフォルトの Aurelia スケルトンで動作させようとしています。これは、ローダーとして System.JS に基づいています。
TypeScript がモジュールのインポートを受け入れるのに問題があります。スケルトン ファイルの 1 つ「nav-bar.js」の名前を「nav-bar.ts」に変更して、例を TypeScript に変換できるかどうかを確認しました。このコードにより、次のコンパイラ エラーが発生します。「エラー:(5, 24) TS2307: 外部モジュール 'aurelia-framework' が見つかりません。」
aurelia-framework を有効なインポートとして TypeScript に表示させるにはどうすればよいですか? プロジェクトのルートに「aurelia-framework」の特定の場所を記述しているように見える config.js というファイルがありますが、TypeScript はそれをロードする方法を知りません。
よろしくお願いします。