問題タブ [systemjs-builder]
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.
angular - バンドル後のAngular 2 No Providerエラー
Angular2 アプリのリリース バージョンを使用するようにアプリをアップグレードしました。正常に動作しますが、バンドルされたファイルからアプリを実行すると問題が発生します。gulp を使用して、テンプレートも埋め込まれた単一の Javascript ファイルにアプリをバンドルします。Angular2 RC4 を使用してアプリのバンドル バージョンを正常に実行しましたが、リリース バージョンでは"No provider for AppConfig"
. AppConfig は私のクラスの 1 つであり、app.module.ts によって提供されます。
どんな助けでも大歓迎です。
gulpfile.js
systemjs.config.js
index.html からのスクリプト
main.ts
typescript - モジュール バンドルのタイピングを作成する
なぜ他の誰もこの問題を抱えていないのか、それとも私がそれを説明するのに適切な言葉を使っていないだけなのか、少し疑問に思っています。問題は、バージョンが必要な npm に公開するモジュールがあることです。1 つは system-js を介してロードし、npm から直接使用できます。もう 1 つのバージョンは、system-js-builder で作成した自己実行バンドルです。
モジュールが@company/fooと呼ばれていると仮定しましょう 。ルート フォルダーに index.ts があり、src からすべてをエクスポートするだけです。ここには、すべてのサブモジュールがエクスポートされる index.ts もあります。したがって、index.ts は次のようになります。
そして、それを使用したいモジュールでは、次のように簡単に使用できます。
ここまでは簡単。いいえ、インデックスから自己実行バンドルを作成し、グローバル名fooを付けて、スクリプトをページに追加するか、他のスクリプトと連結する場合にfoo.bar()を呼び出すことができるようにします。これもうまくいきます。しかし今、このバンドルのタイピングを作成する方法がわからないという問題があります。私の考えは、次のようなことをすることでした
これは、バンドルが何をするかを非常によく説明していると思いました。しかし、typescript はこれを好まない。私もモジュールで何かを試しましたが、何も機能しません。src バレルからエクスポートされたものが名前空間 foo で始まるという事実をどのように説明できますか?
私が達成したいことが明確であることを願っています。
javascript - 実稼働用のバンドルを実行すると、Angular2 systemjs 遅延読み込みエラーが発生します
実稼働用のバンドルを実行すると、Angular2 systemjs 遅延読み込みエラーが発生します
typescript、html5、systemjs を使用する angular2 アプリがあります。
遅延ロード モジュールをローカルで実行すると、すべて正常に動作します。しかし、リリース用のバンドルなどの本番ファイルを作成するとき。次に、モジュール/ルートの遅延読み込みが機能しません。
アプリは引き続き読み込まれ、他の非遅延読み込みルートは機能します。しかし、たとえば私の用語ページでは、コンソールログに次のエラーが表示されます。
キャッチされていない (約束): TypeError: System.import は関数ではありません
バンドルの system.config を更新しようとしましたが、正直なところ、手がかりがありません。
これは私の試みです(system.configファイル):
*これは、ModuleTerms などの利用規約ページ用でした。このページはローカルでは正常に動作しますが、バンドル内で壊れているようで、/terms などに移動します。
何らかの設定が必要だと思います。
他のコードを見る必要がある場合はお知らせください。
angular - 遅延読み込み + systemjs ビルダーがバンドルされたプロジェクトを使用して angular2 プロジェクトに AOT を適用する
Angular2 SystemJs プロジェクト (レイジー ロード モジュールを使用) での aot の適用とバンドルに関するサンプル Angular 2 プロジェクトはどこにありますか?
これはangular-cliで行います。しかし、どうすればsystemjsでこれを行うことができますか?
angular - Angular 2 & BreezeJS & SystemJS Build - 複数の匿名定義
gulpfile を介して SystemJS ビルド ツールを使用して、Angular 2 & BreezeJS アプリケーションをビルドしようとしています。ただし、ビルド タスクを実行しようとすると、Multiple anonymous defines
エラーが発生します。
一方、自分のページに直接インクルードしてアプリケーションを実行するsystem.js
とsystemjs.config.js
、問題なく動作します。
では、このエラーは正確には何を意味し、systemjs-builder でアプリケーションをビルドすることは可能でしょうか?
- そよ風-クライアント: 1.6.0
- システムjs: 0.19.41
- systemjs ビルダー: 0.15.34
systemjs.config.js
gulpfile.js
angular - gulp で systemjs-builder を使用する場合のプロバイダー エラー
angular 2アプリを本番用にバンドルしようとしています。開発では、Visual Studio の typescript コンパイラ (tsconfig.json の「outFile」パラメータを使用) によって生成されたファイルを使用し、System.js でモジュールをロードします。本番環境では、gulp によって生成されたファイルを使用したいと考えています。
開発モードではすべて問題ありませんが、gulp によって生成されたファイルを使用している場合、プロバイダーが設定されているにもかかわらず、サービスの 1 つでプロバイダー エラーが発生します。
私の appCompnent :
このサービスはエラーを生成しません:
例外「エラー: RechercheAgentService のプロバイダーがありません!」をトリガーする私のサービス:
これは私の一気の仕事です:
私のtsconfig:
私のAppModule:
カレンダーモジュール:
RechercheAgentモジュール:
共有モジュール:
angular - systemjs-builder - angular2 の rxjs のバンドル
私は Angular2 アプリを持っていますが、開発環境では問題なく動作します。すべての Angular2 依存関係は、実行時に node_modules dir からロードされます。
アプリケーション コードのバンドルには gulp-typescript プラグインを使用し、サード パーティのライブラリ コードのバンドルには system-js を使用します。
これは、lib ファイルをバンドルするための gulp タスクです。
すべての rxjs ライブラリを出力ファイルに含めたいと思います。しかし、アプリを実行すると、404ステータスが表示されます
(および他のすべての rxjs ファイル)。
それぞれの個別の rxjs ファイルをバンドルすると役立ちます。
しかし、それは良い解決策ではないと思います。
問題は、rxjs ライブラリから必要なファイルをすべてバンドルするにはどうすればよいかということです。(Angular2 に必要)
reactjs - SystemJSで同じライブラリを2回ダウンロードせずにJavaScriptオンデマンドバンドルをロードする方法は?
たとえば、React
プロジェクトがあり、メインのエントリ ポイントがapp.js
. 私が含める場所React
、React-DOM
そしてjQuery
このように:
ここで、次のようにオンデマンドでトリガーするルートがいくつか定義されていると想像してroute1.js
くださいroute2.js
。
今、私はjspm
自分のコードをこのようにバンドルするために使用します (たとえば、多くのカスタム作成バンドルもインポートします) react
。したがって、すべてのライブラリとカスタム モジュールをまとめてバンドルすると、.react-dom
app.js
app.js
build.js
現在、オンデマンドでなどbuild.js
の読み込みをトリガーするコードが内部にあります。ただし、andも との ES6 インポートを使用します。もちろん、 or を使用してこれらをバンドルすることもできます。同じライブラリを内部に含めたくありません。または、内部に一度ダウンロードしたためです。ただし、ブラウザがこれを理解していないため、フェッチまたはそのまま (ES6 import ステートメントを使用) のみは機能しません。route1.js
route2.js
route1.js
route2.js
react
react-dom
webpack
jspm
route1.js
route2.js
react
react-dom
build.js
route1.js
route2.js
route1.js
route2.js
app.js
rout1.js
route.js
どうやって作るの?
- 開発中の ES6 コードを使用して同時にオンデマンドでコードをロードする
- 同じライブラリを複数回ダウンロードしないでください
angular - systemjs-builder を使用してすべてのパッケージを単一のファイルにバンドルおよび縮小する方法
angular2 アプリがあります。次の構成を使用してアプリをバンドルします。libフォルダーの下にすべてのライブラリがあり、 jsフォルダーにバンドルされています。
構成からマップを削除すると、アプリが機能しません。
systemjs-builderがmyappとすべての angular ライブラリを 1 つのbundle.jsファイルにバンドルすることを期待していました。しかし、そうではなく、さまざまなパッケージ フォルダーでパッケージを探しています。
myappとその依存関係を単一のファイルにバンドルするにはどうすればよいですか?