【TypeScript】型安全にJSON.parse()を使う
function safeJsonParse<T>(jsonString: string): T | null { try { const parsedData = JSON.parse(jsonString); if (typeof parsedData === 'object' && parsedData !== null) { return parsedData as T; } } catch (error) { console.error("JSONパースエラー:", error); } return null; } // ex const parsedData = safeJsonParse<JsonType>(jsonString);
Zodというライブラリでより堅牢な型チェックも可能な模様
【TypeScript】型をすべてオプショナルに変換する
type SampleType = { id: number; name: string; } // 1 type OptionalSampleType1 = Partial<SampleType>; // 2 type OptionalSampleType2 = { [K in keyof SampleType]?: SampleType[K]; }
最近のReact(Next.js)開発で気付いたこと
React v18 関連
- StrictMode により初回に2回マウントされる
想定した挙動と違って少し戸惑ったので。
- (Next.js であれば next.config.js から無効にできる)
- React.FC 型 から children が除外される
- React.VFC はもう使わない
- children を明示的に指定する (
children: ReactNode
)