TypeScript

axiosでAPIをコールして認証切れだった場合、トークンを再取得してからリクエストをリトライする(リトライ回数上限付き)

const axiosConfig = { baseURL: baseUrl, retries: 1, // リトライ回数 retryCount: 0, } const client = axios.create(axiosConfig) // レスポンス時の処理 client.interceptors.response.use( response => { return response }, async error => { if (err…

ユーザー定義型ガード

外部からデータを受け取る場合、アプリが停止することを防ぐためにデータの型をチェックする必要がある typeof演算子やin演算子の他、ユーザー定義型ガードを利用することでチェックできる 例 { "setting1": 1, "setting2": "a" } import * as data from "./…

型アサーション

型アサーションとは、TypeScriptのコンパイラがコードから推論した型を開発者が上書きすること 例 使用前 let value = {} value.name = "logosware" // error TS2339: Property 'name' does not exist on type '{}' 使用後 type User = { name: string } // …