問題タブ [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.

0 投票する
2 に答える
1919 参照

typescript - Mocha & Chai + TypeScript + SystemJS + JSPM + Angular + Three.js のテスト方法

私は Web ベースの 3D ゲームに取り組んでいます。私のプロジェクトはTypeScriptで完全にセットアップされています。

Angularを使用してすべてのルーティングをセットアップし、 Three.jsを 3D エンジンとして使用しています。

最後に、typescript-requireという特定のプラグインを使用して TypeScript をテストするためのMocha + Chaiコンボがあります。

JSPMパッケージのインポーターとしてSystemjsを使用しています。

ステージを設定するには:(
ファイルは例のために削除されています

Systemjs/JSPM ファイル:jspmconfig.js

ノード ファイル:package.json

コントローラ ファイル: QuestDetailCtrl.ts:

注: アプリの少し前のどこかで既にThree.jsをインポートしているので、コントローラーで使用できます (これも ES5 に適切にコンパイルされ、ブラウザーで動作します)。

モカ テスト ファイルQuestDetailCtrl.spec.ts

最後のファイルQuestDetailCtrl.spec.tsでは、コントローラー (TypeScript クラス) の新しいインスタンスを初期化します。

Mocha は Three.js を認識していないため、このテストはコントローラーのインスタンスの初期化に失敗します。

だから私の質問は次のようになります:

Mocha がそれを認識してテスト/初期化できるように、テスト内で Three.js (または他のサードパーティのライブラリ) をモック/インポートするにはどうすればよいですか?

これをテストし始めると、同様の状況がAngularにも当てはまると思いますので、解決策をいただければ幸いです!

私はすでに、ライブラリにデータをimport System from 'systemjs'設定してシステムの変数を設定するソリューションにぶつかりましたが、それを機能させることができませんでした。metathree.jsglobal

ありがとう!

0 投票する
2 に答える
1542 参照

angularjs - ディスクに書き込むことなく、gulp タスク間でデータを渡す

systemjs 角度プロジェクトに注釈を付けて縮小しようとしています。Systemjs にはビルド機能が付属していますが、「gulp 対応」ではありません。縮小するオプションをビルダーに渡す可能性がありますが、ng-annotate のオプションがないため、代わりに両方を実行するには gulp が必要です。

上記をどのように組み合わせることができますか

最初のタスクをファイルに出力し、それ.srcをファイルに出力することもできますが、それが最善の方法ではないでしょうか?

0 投票する
1 に答える
498 参照

ecmascript-6 - Webpack とシステムを使用した未解決のノード モジュールの依存関係

フォルダーからプロジェクトの依存関係をインポートするために、コードに次のES6インポートがあります。node_modules

この webpack 構成を使用すると、すべてが期待どおりに機能します。

自動的に追加された反応依存関係を含むバンドルされたファイルになります。

modules: 'system'しかし、インポートを次のように出力するために使用するようにbabelを構成するとSystem.register:

次に、バンドルされたファイルに反応依存関係が含まれなくなり、systemjswebpack を通過した後にライブラリをコンパイル済みファイルに追加する必要があります。

を使用してこの構成をどのように処理すると考えられますwebpackか? にコンパイルするときに既に行っているようにwebpack、react 依存関係をバンドルできないのはなぜですか?systemcommonjs

PS:私は、またはwebpackではなく、を使用してこれを達成することを具体的に求めていますsystemjs-builderjspm

0 投票する
1 に答える
1399 参照

typescript - VS2015 + TypeScript + コルドバ + Angular2 + SystemJS

systemJS外部モジュールのロードに問題があります。VS2015 用の小さなサンプル プロジェクトを作成しました。ここからコードをダウンロードできますhttps://github.com/dbiele/TypeScript-Cordova-SystemJS

Ripple または BrowserSync でプロジェクトとビューをビルドすると、次のエラーが発生しますxhr_proxy。.jspm.io で外部ファイルを見つける必要があるときに、registry.jspm.ioSystemで外部ファイルを探しているようです。 animate.jslocalhost

何かご意見は?GitHub のコードは本当に基本的なものです。注: ブラウザーとリップルで実行しているため、これは Cordova の問題ではないと思います。

ここに画像の説明を入力

0 投票する
1 に答える
172 参照

typescript - systemjs から ts.d を解決する際の問題

私は jspm を使用しており、パッケージをインストールしました。typescript 1.6 をインストールしたので、package.json が 'main' と 'typings' を定義していることを確認しました。https://github.com/Microsoft/ TypeScript/wiki/Typings-for-npm-packages

奇妙なのは、これが機能しないことです。モジュール「theModule」が見つかりません

しかし、相対パスを実行すると正常に動作します

考えられることはすべて試しましたが、これを機能させることができないようです。私が間違っているかもしれないことは何ですか?

0 投票する
1 に答える
509 参照

angular-material - JSPM / SystemJS で CSS インポートを無効にする方法

私の問題は、JSPM / SystemJS が手動で CSS 依存関係 ( Angular Material のCSS) を挿入することです (Gulp + SASS)。

CSS ファイルをインポートしたり、CSS の依存関係を解釈したりしないように JSPM に指示するにはどうすればよいですか? 私はこの議論だけを見つけました - https://github.com/jspm/jspm-cli/issues/791 - しかし、それは私をまったく助けませんでした.

0 投票する
2 に答える
1168 参照

reactjs - es6 + jspm + systemjs + reactJS による jest テスト

私のreactJS ES6アプリケーションで単体テストを作成する方法を見つけようとしています。私のアプリケーションはすでに es6 モジュール システムを使用しており、jspm/babel で systemJs にトランスパイルされています。

プリプロセッサとして babel-jest を見つけましたが、それを使用しても、jest が SystemJ を見つけられないため、テストを実行できません。( 「システムが定義されていません」というエラーがコンソールに表示されます)

ブラウザでは、jspm ドキュメントで説明されているように、SystemJs はグローバルにロードされます。プリプロセッサ内に SystemJ をロードする必要があると思いますが、テストで追加のモジュールをロードするために systemJ を使用できるようにするにはどうすればよいですか?

前もって感謝します

0 投票する
8 に答える
11387 参照

typescript - momentJSのTypescriptモジュールシステムが奇妙に動作する

typescript から momentJs を使用しようとしています: typescript のコンパイルに使用しているモジュール システムに応じて、momentJs の使用方法について異なる動作を見つけます。typescript をcommonJsでコンパイルすると、すべてが期待どおりに機能し、momentJs のドキュメントに従うことができます。

「瞬間」をインポートするときに「システム」をタイプスクリプトモジュールシステムとして使用すると、強制されます

使用されているタイプスクリプトモジュールシステムに関係なく、両方を機能させる回避策を見つけました

私はこれが好きではありません。なぜこのように振る舞うかを理解したいと思います。私は何か間違ったことをしていますか?何が起こっているのか誰か説明してくれませんか?