PCがあれば何でもできる!

へっぽこアラサープログラマーが、覚えたての知識を得意げにお届けします

JavaScript

【TypeScript】express4.xとangular1.5間で、オブジェクトをシリアライズ化して送受信

node + express4.xでREST APIを作り、angular1.5から利用する際、 お互いにjavascriptなのに、送受信の度にjsonで表現できないオブジェクトを、元の状態に戻すのがめんどくさい。 例えばmoment.jsを利用して日付を送る場合、 const reqData = { date: moment…

【TypeScript】日本の祝日判定

日本の祝日を求めるのに、良いライブラリがないか探していた所、Osamu Takeuchi氏のjapanese-holidays-jsを発見。 GitHub - osamutake/japanese-holidays-js: Provides utilities to manipulate japanese holidays. 元ソースは、あまり自分に馴染みのないCof…

【TypeScript】target:'es6'でビルド後、実行すると"TypeError: ??? is not a function"が出る

TypeScriptでasync/awaitが使いたかったため、こちらの記事を参考にさせていただき、ビルド環境を整えました。 TypeScript 1.7 を Babel と組み合わせて async/await を使う | スマホ神 – JavaScript 受託開発 – 環境 Node v5.6.0 typescript v1.8.7 ビルド…

【Node.js+Express4.x】REST APIで、エラーの内容毎に異なるステータスコードとエラーコードを出力する

Node.jsでREST APIを作っていて、エラー時のレスポンスをどうしようかなぁ、とごにょごにょ考えていました。 できれば、 エラー内容毎に、レスポンスのステータスコードを切り分けたい クライアント側でエラーの種類を判別するために、独自のエラーコードも…

Webpack+babel-loaderでビルド時にエラー(ERROR in Cannot find module './node_modules/babel-loader/index.js')

Webpack+babel-loaderでES6のソースをビルドしていたらエラーが発生しました。 エラー内容は ERROR in Cannot find module './node_modules/babel-loader/index.js' というもの。 エラーの詳細情報や、解決策はこちらに記載されていました。 Cannot find mod…

【jQuery】Formの2重投稿を防ぐ方法(submitボタンが2つ以上ある場合)

Formの2重投稿はサーバ側でも防止するべきですが、UIを考えるとフロント側でも防止出来たほうが嬉しいですよね。 まず、submitボタンが1つの場合によくあるのは、submitボタンにdisableをかける方法。 例えばこんな感じ。 <form id="sample_form"> <button type="submit">submit</button> </form> <script> $(function(){ $('#sam…

【jQuery】getScriptでの非同期js読み込みで、読み込み順を制御したい

ただの再帰処理ですが。 依存関係があり読み込み順が重要な場合にどうぞ。 // 読み込み用メソッドを定義 (function($) { $.getScriptsSequencial = function(scripts, callback) { var f = function(i) { $.getScript(scripts[i], function(){ if (i+1 < scr…