2021-02-01から1ヶ月間の記事一覧

Nuxtでstore.commitを呼び出すラッパー関数を作る

NuxtのPageやComponentからStoreに値を更新する時、以下のようにstore.commitを呼びます。 this.$store.commit("analytics.incrementClickCount") サーバーサイドでのみ実行されるasyncDataではContextを通じて呼びます。 // Nuxt公式のサンプルではcontext…

GCP FirestoreのEmulatorをKillしたい

以下のようにFirestoreのエミュレータを指定のポートで起動できます。 $ gcloud beta emulators firestore start --host-port=localhost:8081 起動した後、[firestore] Dev App Server is now running.と表示されます。そこでCtrl + Cを押すとターミナルが入…

1つのプロジェクト成り立たせるためにGCPのApp EngineとCloud Functionsで動作させています。App Engine、Cloud Functions両方共通のコードがあります。この共通コードをどこに置くかで小一時間悩みました。 結論から言うと共通コードはリポジトリを分けて、…

TypeScript、Jest、Webpackでimportの際、aliasを使えるようにする

モジュールをimportする際にパスが長くなる場合、aliasを使うことがあります。Node.jsの開発でTypeScriptでソースコードを書いて、Jestでテストして、Webpackでバンドルしてデプロイしている人も多いと思います。aliasの設定は各々の設定ファイルでする必要…

GCP Cloud FunctionsをTypeScriptで書く

Google Cloud Platform(GCP)のCloud FunctionsもTypeScriptで書きたい。そしてデプロイしたい。で、ググるとFirebaseのCloud Functionsの説明ばかり出てくるんですよね・・・FirebaseはFunction作成時にTypeScriptを選択できるみたいだけど、GCPは無理なよ…

MulterのエラーをJSONで返したい時

Node.jsでmutipart/form-dataを受信する場合、Multerを使っている人も多いと思います。Multerに設定したファイルサイズ上限を超えた時など、デフォルトではMulterがHTMLでレスポンスを返してしまいます。Node.jsでAPIサーバーを実装している時など任意のJSON…

PHPickerResult#assetIdentifierがnilになる

iOS 14から使えるようになったPHPickerViewControllerを使うと撮影した写真や動画を選択するUIを提供してくれて便利です!・・・なのですがPHPickerResult#assetIdentifierがnilになるせいで、PHAsset#fetchAssetsで詳細情報を取れずハマりました 理由はPHPi…

IntelliJで意図しないファイルタイプで開くのを解決する

WebStormなどIntelliJ IDEA系ファイルを作った時、たまに拡張子を無視してプレーンテキストとして開かれるようになることがあります。ファイルを削除して作り直しても解決しない・・・この問題は設定で解決できます。 メニューからPreferencesを選択 サイド…

UIImageでAssetsのフォルダ指定できるようにする

画像のAssetsはフォルダ分けできますが、そのままだと UIImage(named: "dir1/icon1") のようにフォルダを指定するとnilが返ってきます。 Assetsに作ったフォルダを選択してProvides Namespaceにチェックを入れるとフォルダを指定してUIImageオブジェクトを取…