Uso nuxt 3. Tengo este código en mi servidor.
findAuthorByEmail(email: string, showPassword = false) { return Author.findOne({ email }) .select(showPassword ? "" : "-password_hash") .lean(); }, Dentro de mi /server/api/login.post.ts lo devuelvo aquí:
return { token, author, }; Nuxt tiene la función de proporcionar los tipos para mi interfaz. ¿Cómo debería ser mi consulta para que mi respuesta solo proporcione las propiedades que están disponibles? Si trato de usar, por ejemplo $isDefault , entonces no funciona, por supuesto.
Aquí también está mi modelo de mangosta:
import { Document } from "mongoose"; import { AuthorI } from "~~/types"; import { conn } from "../configuration/connection"; import { authorConfig } from "../configuration/author"; import mongoose from "mongoose"; const schema = new mongoose.Schema({ email: { required: true, type: String, trim: true, lowercase: true, unique: true, }, password_hash: { type: String, required: true, trim: true, minlength: authorConfig.password_min_length, }, name: { maxlength: authorConfig.name_length, trim: true, type: String, }, family_name: { type: String, maxlength: authorConfig.family_name_length, trim: true, }, description: { type: String, maxlength: authorConfig.description_length, trim: true, }, props: {}, username: { type: String, trim: true, unique: true, required: true, maxlength: authorConfig.username_length, }, created: { type: Date, required: true, default: Date.now, immutable: true, }, enabled: { type: Boolean, default: true, }, }); export const Author = conn.model<AuthorModel>("Author", schema); interface AuthorModel extends AuthorI, Document {}utilice el método .lean(). cheque oficial doc mangosta lean