Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

184
Visualizações
Problema con fecha y mecanografiado de mangosta

Me enfrento al problema con el documento oficial de Mongoose encontrado aquí .

 import { Schema, Model, model } from 'mongoose'; export interface IUser { name: string; email: string; avatar?: string; created: Date; } const schema = new Schema<IUser, Model<IUser>, IUser>({ name: { type: String, required: true }, email: String, avatar: String, created: { type: Date, default: Date.now }, }); export const UserModel = model<IUser>('User', schema);

Mi problema es que el tipo created en IUser no es el mismo que en el schema y obtuve el error:

 Type '{ type: DateConstructor; default: () => number; }' is not assignable to type 'typeof SchemaType | Schema<any, any, undefined, unknown> | Schema<any, any, undefined, unknown>[] | readonly Schema<any, any, undefined, unknown>[] | Function[] | ... 6 more ... | undefined'. Types of property 'type' are incompatible. Type 'DateConstructor' is not assignable to type 'Date | typeof SchemaType | Schema<any, any, undefined, unknown> | undefined'. Type 'DateConstructor' is missing the following properties from type 'typeof SchemaType': cast, checkRequired, set, getts(2322) (property) created?: typeof SchemaType | Schema<any, any, undefined, unknown> | Schema<any, any, undefined, unknown>[] | readonly Schema<any, any, undefined, unknown>[] | Function[] | ... 6 more ... | undefined

Por favor hazme saber como arreglar esto.

over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Date.now() es una función que devuelve number . En lugar de eso, intente usar new Date() solamente. También es necesario realizar cambios en el tipo de createdAt to Number .

En el enlace del documento dado, el tipo de campo createdAt es number , pero aquí ha escrito Date .

 interface User { name: string; email: string; avatar?: string; createdAt: number; }

O

createdAt y updatedAt son marcas de tiempo que se pueden usar directamente sin especificar en el esquema.

 const schema = new Schema<IUser, Model<IUser>, IUser>({ name: { type: String, required: true }, email: String, avatar: String },{ timestamps: true });
over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda