Angularでng testを行った時に色々とエラーが出るが、
検索するとだいたい決まりきったわけのわからない解決方法があり、
何度も調べたりすることになるのでメモっておくことにする。
随時更新。
ngModel
ngModelでエラーの場合はFormsModuleをimports。(app.module.ts参照)
No provider for Overlay!
import {OVERLAY_PROVIDERS} from "@angular/material";
providers: [OVERLAY_PROVIDERS],
Error: Error in ./MyComponent class MyComponent - inline template:5:8 caused by: Cannot read property 'subscribe' of undefined
template:5:8は見てみるとa routerLinkのところ。下記のRouterLinkStubDirectiveをdeclarationsに追加すればいい。
https://angular.io/docs/ts/latest/guide/testing.html#!#router-link-stub
もしrouterLinkを動作させるためにRouterTestingModule, RouterModuleやアプリケーションのルーティングモジュールなどをimportsしている場合は外す。
本番と同じ動作をさせられない場合はモックを使う。
Crieitは誰でも投稿できるサービスです。 是非記事の投稿をお願いします。どんな軽い内容でも投稿できます。
また、「こんな記事が読みたいけど見つからない!」という方は是非記事投稿リクエストボードへ!
こじんまりと作業ログやメモ、進捗を書き残しておきたい方はボード機能をご利用ください。
ボードとは?
コメント