Enginner ORM プログラミング

【Prisma】Eslintエラー解消|TypeScriptの型を認識してくれないときはVSCodeの再起動

Prismaは主にTypeScript、Node.jsのエコシステム向けに設計されているORMツールです。

Prismaを使用することでデータベーススキーマの定義、型安全なクエリの生成、マイグレーション管理が簡単になります。

さらに、TypeScriptの型推論機能と統合されているため、開発中のエラーを未然に防ぎ、コードを書く時間を短縮できます。

しかし、下記のエラーメッセージで詰まってしまいました。

Unsafe return of an `any` typed value.eslint@typescript-eslint/no-unsafe-return

新しく追加したmodelからの戻り値がany型として扱われているため、このエラーが発生しています。

開発環境

開発で仕様しているバージョンは以下のとおりです。

  • eslint : 8.57.0
  • prisma : 5.14.0
  • typescript : 5.4.2

新しいモデルの作成手順

Prismaに新しいモデルを追加する手順は以下のとおりです。

  1. prisma.schemaにmodelを定義
  2. consoleでprisma generateを行う
  3. tsファイルで使用する。

作成したmodelは以下のものです。

model Add {
    id          String   @id @default(auto()) @map("_id") @db.ObjectId
    type        String
    money       Int
    description String?
    date        DateTime @default(now())
    createdAt   DateTime @default(now())
    updatedAt   DateTime @updatedAt

    createdBy   User   @relation(fields: [createdById], references: [id])
    createdById String @db.ObjectId
}

VSCodeの再起動でエラー解決

モデルの作成とprisma generateによるPrisma Clientの更新は成功しましたが、冒頭でも書いた下記のエラーが消えません。

Unsafe return of an `any` typed value.eslint@typescript-eslint/no-unsafe-return

型を定義しても、エラーが消えなかったためVSCodeの再起動をしたところエラーが解決しました。

エラーの解決方法まとめ

型に関するエラーが消えない場合には

VSCodeの再起動

が簡単かつ有効です。

Prismaに限らず依存関係のエラーなどもVSCodeの再起動で治るパターンが多々あるので、まずは再起動を試してください。



-Enginner, ORM, プログラミング
-, ,