Tengo una interfaz que amplía un documento MongoDB y algunos datos de muestra que amplían esa interfaz. La interfaz es así:
export default interface IModel extends Document { _id: ObjectId; name: string; data:string; }Los datos de muestra coinciden con esta interfaz. El tipo de ID de objeto parece una cadena de números y letras. Sin embargo, cuando defino un valor para los datos de muestra en los campos _id, arroja un error porque TypeScript lo escribe como una cadena y el tipo debe ser ObjectId. Entonces, ¿cómo puedo convertir el valor de la identificación para que sea del tipo ObjectId?
Estoy tratando de hacer algo como esto:
export const ModelSampleData: IModel = { "_id": toObjectId(240nfkfn38943), "name": "model", "data": "modelstuffetc" }¡Agradezco cualquier ayuda!
Todo lo que necesita hacer es eliminar "", intentó copiar la respuesta y asignarla a ModelSampleData, que es un objeto json, no un objeto javascript, si desea usar, use JSON. parse a continuación, ambas muestras deberían funcionar
import { ObjectId } from 'mongodb'; export default interface IModel extends Document{ _id: ObjectId ; name: string; data:string; } export const ModelSampleData1: IModel = JSON.parse(`{ "_id": ObjectId(240nfkfn38943), "name": "model", "data": "modelstuffetc" }`);o
export const ModelSampleData: IModel = <IModel> { _id: new ObjectId("240nfkfn38943"), name: "model", data: "modelstuffetc" }