開発覚書はてな版

個人的な開発関連の備忘録

TypeScript

【Angular】HttpInterceptorの実装(レスポンス内容確認)

概要 以前紹介したAngularのHttpInterceptorでレスポンス内容を確認することも出来ます。 今回はそのサンプルソースをのせておきます。 kakkoyakakko2.hatenablog.com

【TypeScript】拡張メソッドの実装(基本型)

概要 declare global + interface で追加したいメソッドを追加後、prototypeにメソッドを追加します。 拡張メソッドを利用したい場合は、importをすることで利用できます。 詳細についてはサンプルソースを確認。 ちなみに拡張メソッドは他の開発言語でもあ…

【VSCode】Visual Studio Code v1.24 の気になる新機能

目次 目次 概要 TypeScript関連 Update import paths when a file is moved or renamed Highlight unused variables and imports Generate getter/setter refactoring Preview機能 Outline view New Settings editor 終わりに 概要 Visual Studio Code v1.24…

【Angular CLI・Karma】JUnit形式のテスト結果を出力する

概要 Angular CLI利用時にKarmaでのテスト実行時にテスト結果をJUnit形式で出力する方法です。 なぜJUnit形式でテスト結果を出力するかというとJenkins等でテスト結果を取り込むのにJUnit形式だと簡単に出来るからです。 今回利用するツールはkarma-junit-re…

【Jasmine】テストを失敗させる

概要 Jasmineで特定ケースの場合、テストを失敗させたい場合はfailメソッドまたはdone.failを使用します。 PromiseやRxJS等でrejectやthrowErrorを発生させるテストの場合、正常に動作してしまう場合がテスト失敗なため、failメソッド等で明示してあげるとテ…

【Jasmine】Promiseのテスト方法

概要 JasmineでのPromiseをテスト時にはテスト定義の引数にdoneを利用します。 doneを利用することで、非同期処理完了後まで待機してくれます。 doneを設定しない場合は、Promise.then内の処理をスルーしてテストを終了するため、正常なテスト結果がでない場…

【TypeScript】定数クラスっぽいものをつくる

概要 TypeScriptで定数クラスっぽいものをつくるのには namespace を利用すると便利です。 各const値をグループ化して、あたかも定数クラスのように利用できます。

【RxJS】指定した秒数遅らせてデータを処理

概要 RxJSで指定した秒数遅らせてデータを処理したい場合、deleyオペレーターを使用します。 引数でnumber型を設定すればミリ秒単位の指定が出来ます。 ローディング処理とかの確認に使うと便利です。

【VSCode】Visual Studio Codeでregionを使う

概要 Visual Studio Code では、Visual Studio の C# のように region指定が出来ます。 今回は Visual Studio Code で TypeScript, HTML, CSS に対してregion指定をしたいと思います。 基本的には各言語のコメントアウト部分に #region と #endregion を設定…

【Angular】HttpInterceptorの実装(Cookieベースセッション編)

概要 AngularのHttpリクエストの前後に共通処理を実装したい場合、HttpInterceptorを実装することで対応することが可能です。 用途としては以下のケースがありそうです。 ログ出力 HTTPヘッダーにトークンを設定 今回は前回の記事で紹介したAngularでのCooki…

【Angular】Cookieベースのセッション管理を実施

概要 AngularのHttpClient利用時は標準ではCookieベースのセッション管理が出来ません。 旧システムの認証ではCookieベースのセッション管理が必要になる場合があります。 対応方法としてはget、post等のメソッドの引数に withCredentials: true を設定する…