Estoy construyendo un carrito de compras usando expressjs, typescript y redis OM como base de datos en memoria. Después de crear un esquema con Redis OM, aparece un error
La propiedad 'fetchRepository' no existe en el tipo 'typeof App'.ts(2339)
en esta línea de código
export let CartRepository = client.fetchRepository(CartSchema)soy un poco nuevo en mecanografiar
todo el esquema:
import { Entity, Schema,Repository } from 'redis-om' import client from '../../../../app' export default class Cart extends Entity {} const CartSchema = new Schema(Cart, { item_name: { type: 'string' }, item_Cost:{ type: 'number' }, coin_type:{type:'string'} }) export let CartRepository = client.fetchRepository(CartSchema) CartRepository.createIndex()A continuación se muestra desde dónde se exporta el cliente.
//app.ts const url:any = process.env.REDIS_URL const connection:any = createClient({url}).connect().then(() =>{ console.log("database connected successfully"); }) let client:any; module.exports.client = new Client().use(connection);Está mezclando CommonJS ( module.exports ) y ESM ( import y export )
En app.ts cambie module.exports.client para export const client = y en el otro archivo cambie para import { client } from .