CLIツールを作っていると、必ずと言っていいほど書くことになるバリデーションコード。TypeScriptの型推論を活用したら、このコードをほぼ不要にできたお話をします。
きっかけは、いろんなプロジェクトのコードを読んでいて気づいたことでした。どのCLIツールにも、似たようなバリデーションコードが含まれているんです。例えばこんな感じです:
if (!opts.server && opts.port) {
throw new Error(‘–port requires –server flag’);
}
if (opts.server && !opt…
Source link
Views: 0