archive: 2017年01月  1/1

Zone.jsをNode.js版ThreadLocalとして使う

Node.js でアプリ作ってて、リクエスト情報(セッションIDとかIPアドレスとか)をログとかで出したいけど、そのためにモデル層にリクエストを引き渡したくない、という事で方法を調べたところ、Zone.js というものが使えそうという事が分かったのでその話。こういう仕組みを作る場合、グローバル変数的なものがあればそこに置いておけばいいんだけど、JavaScriptは非同期処理なので普通のグローバル変数では駄目で、リクエストごと...

SequelizeをTypeScriptで動かす

JavaScript で一番メジャーらしいORMの Sequelize を TypeScript でも動かしてみたので、その手順とかあれこれ。なお、Qiitaにも2015年の解説記事があり、自分も参考にさせて頂いたのだけど、バージョンが上がって?微妙に定義が変わったりしてて(TPojo→TAttributesとかSequelize.Instanceの型が違うとか)混乱したので、2016年末時点の情報ということで一通り書いとく。実際に使ってるソースは前回に続きこれ。せっかちな人はGit...

TypeScriptの個人的tips

年末年始の貴重な休みを使い、何を思ったかTypeScriptでWebアプリを作っていて、とりあえず完成はしてないけど一段落したので、そこで得たtipsをまとめておく。なお、tipsの使用例を見たい場合は↑のGitHubのソースを参照してください。以下目次。今回はそんな大した話はない。型も使えるJavaScriptとしてゆるく使う引数/戻り値の型はきっちり書く型定義ファイルは@typesで参照する型に困ったらanyにキャストmodule.exports ≠ expor...