create-validator-tsというTypeScriptの型定義からJSON Schemaを使ったバリデーションコードを生成するツールを書きました。 モチベーション expressなどでAPIを書くときに、Request/Responseが意図したものかどうかをバリデーションする必要があります。 特にreq.queryなどはStringが入ると予想しますが、オブジェクトが入ってくることもあります。 これは、expressの内部で使っているqsというURLクエリのパーサが、オブジェクトや配列へ展開する機能を持っているためです。 expressを使ってるサイトは ?q=text があるときに req.query.q には オブジェクトが入る可能性をちゃんと考慮しないといけない。 ?q[a]=text で req.query.q ; // { a: "text" } になる — azu
express + ts-nodev-dev利用時に、遅延ロードをして起動時間を早くするためのライブラリを書いた Expressを使ったアプリケーションの起動を早くするために、ルーターを遅延ロードできるexpress-lazy-routerというライブラリを書きました。 モチベーション Expressを使ったウェブアプリを書くときに、TypeScriptをコンパイルするためにts-node(ts-node-devを使っています。 これは、起動時にすべてのTypeScriptファイルをコンパイルすることを意味しています。 大量のファイルのコンパイルはWebアプリケーションの起動を遅くします。 ts-nodeなどはimportしたファイルをその場で同期的にコンパイルする仕組みであるため、読み込むファイルが多いほどコンパイル時間が長くなります。 起動時には必要ないものは後でコンパイルすることで、
In this article, we look at some of the more advanced features of TypeScript, like union types, conditional types, template literal types, and generics. We want to formalize the most dynamic JavaScript behavior in a way that we can catch most bugs before they happen. We apply several learnings from all chapters of TypeScript in 50 Lessons, a book we’ve published here on Smashing Magazine late 2020
I've used ts-node(ts-node-dev) for developing Node.js Web Application. It means that compile all TypeScript files at start time. Many compilation make startup of the web app slow. Lazy routing avoid this compilation overhead by compiled when needed. Compilation is unbelievably slow · Issue #754 · TypeStrong/ts-node In a frontend, We have already used lazy loading with router like React Router, Vue
Vue3とExpressでToDoアプリを作ることで、TypeScriptに入門しようっていう内容です。 TypeScriptは何も怖くありません。一度使い始めたらもうJavaScriptには戻れなくなるだけです。TypeScriptに入門して快適なコーディングライフを送りましょう!
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く