[解決済み] angular 4 ユニットテストエラー `TypeError: ctor is not a constructor`.
2023-01-13 14:28:30
質問
ルートリゾルバをテストしようとしているのですが、テスト中に
TypeError: ctor is not a constructor
となり、typescriptのコンパイル時にエラーが発生しないのに、なぜそれが起こるのかわかりません。
TypeError: ctor is not a constructor
TypeError: ctor is not a constructor
at _createClass (http://localhost:9877/_karma_webpack_/vendor.bundle.js:42355:26)
at _createProviderInstance$1 (http://localhost:9877/_karma_webpack_/vendor.bundle.js:42330:26)
at resolveNgModuleDep (http://localhost:9877/_karma_webpack_/vendor.bundle.js:42315:17)
at _createClass (http://localhost:9877/_karma_webpack_/vendor.bundle.js:42362:26)
at _createProviderInstance$1 (http://localhost:9877/_karma_webpack_/vendor.bundle.js:42330:26)
at resolveNgModuleDep (http://localhost:9877/_karma_webpack_/vendor.bundle.js:42315:17)
at NgModuleRef_.webpackJsonp../node_modules/@angular/core/@angular/core.es5.js.NgModuleRef_.get (http://localhost:9877/_karma_webpack_/vendor.bundle.js:43401:16)
at TestBed.webpackJsonp../node_modules/@angular/core/@angular/core/testing.es5.js.TestBed.get (http://localhost:9877/_karma_webpack_/vendor.bundle.js:48412:47)
at http://localhost:9877/_karma_webpack_/vendor.bundle.js:48418:61
at Array.map (native)
どのように解決するのですか?
プロバイダの宣言に誤りがある可能性があります。
プロバイダをモックし、useValueの代わりにuseClassを使用しようとすると、エラー "TypeError: ctor is not a constructor"が発生します。
以下は、このエラーを発生させる例です。
providers: [{provide: OrderService, useClass: new OrderServiceMock()}]
正しい宣言は:
providers: [{provide: OrderService, useValue: new OrderServiceMock()}]
関連
-
[解決済み] パイプ ' ' が見つかりません。
-
[解決済み] formControlNameとFormControlの違いは何ですか?
-
[解決済み] 角度2 ngfor 最初、最後、インデックスループ
-
[解決済み] 別のプロセス(id #######)が現在 ngcc を実行しています。
-
[解決済み] AngularでFormGroupに動的にaddControlを追加する
-
[解決済み] angular-cli server - APIリクエストを別のサーバーにプロキシする方法は?
-
[解決済み] ExpressionChangedAfterItHasBeenCheckedError: チェックされた後に、式が変更されました。以前の値: 'undefined'
-
[解決済み] 角度の2つのスイッチケース値
-
[解決済み] ngFor を使用して、Typescript Enum を文字列の配列として反復処理するにはどうすればよいですか?
-
[解決済み] コンポーネントではなくクラスにサービスをインジェクトする方法
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] ng serve がファイルの変更を自動的に検出しない
-
[解決済み] 簡単なパイプで小数点以下2桁に制限する
-
[解決済み] Angular v5からAngular v6にプロジェクトをアップグレードしたい。
-
[解決済み] 遅延のあるobservableを作成するには?
-
[解決済み] 子ルートから親ルートに移動するにはどうしたらいいですか?
-
[解決済み] Typescript におけるインターフェースとクラスの違い
-
[解決済み] Angular cli - ng serve時の自動リロードを無効にする方法
-
[解決済み] ngFor を使用して、Typescript Enum を文字列の配列として反復処理するにはどうすればよいですか?
-
[解決済み] 角度換算2
-
[解決済み] Angular : ルートへの手動リダイレクト