nest.jsのuuid
npm install uuid
sample.service.ts
OK : import { v4 as uuid} from "uuid"; NG: import * as uuid from "uuid";
S3にアップロードされたファイルに対する操作をする前に
Lambdaで関数作ってバッジ処理を行う際、S3のフォルダ(アップロード先)のプロパティをいじることは抜けていたため参考になった。忘れずにメモ。
プロパティ上で通知名、イベントタイプ等を変更可能。
Nest.jsを使っていた時のメモ書き
Nest.jsを使っていて、気づいた、分かった、整理できた点がいくつかあったのでメモ。
- Repository, Model
- Service, Provider
- DI
Repository, Model
Modelはテーブル定義、RepositoryはModelを操作するものと考える
Service, Provider
昔、「ServiceProvider」、「Service」、「Provider」というクラスを作ってそれぞれに処理を書くという現場があって当時良く分からなかった。
(ServiceProviderはLaravelを利用していた)
Nest.jsにおいて、ServiceとProviderは同じ、名称が違うだけ。ただしファイル名はserviceにする。
Serviceにはロジックを書く。
LaravelのServiceProviderはサービスコンテナにサービスを登録する役割を持つ。そのため、「Service」「Provider」とはまた違うもの。
詳細は以下のリンクを参考にする。
DI
依存性の注入、と言われてあまりわからなかった。
あるクラス(Aクラス)を実装するとき、そのクラスのコンストラクタ、初期値に別クラス(Bクラス)を指定してそれをメンバとする.
例を挙げると
Controllerクラスを実装する際に、DIでServiceクラスを指定し、Controllerクラスの関数を作る際に利用する