📜  错误:Nest 无法解析 RedisCoreModule 的依赖项(符号(REDIS_MODULE_OPTIONS),?).请确保索引 [1] 处的参数 ModuleRef 在 RedisCoreModule 上下文中可用. (1)

📅  最后修改于: 2023-12-03 14:58:15.339000             🧑  作者: Mango

Nest无法解析RedisCoreModule的依赖项错误

在Nest中使用RedisCoreModule时,可能会遇到以下错误:

错误:Nest 无法解析 RedisCoreModule 的依赖项 (符号 (REDIS_MODULE_OPTIONS), ?)。请确保索引 [1] 处的参数 ModuleRef 在 RedisCoreModule 上下文中可用。

这个错误通常是由于RedisCoreModule没有正确配置导致的。

原因

RedisCoreModule配置需要使用register()方法,并传递一个对象作为参数,该对象的键包括Redis连接配置,URL地址,通话超时等。如果没有正确地配置这个模块,就会看到以上错误。

解决方案

解决此错误的方法是确保正确地设置RedisCoreModule。在这个模块中,配置中的重要参数是REDIS_MODULE_OPTIONS。我们可以在应用程序的根模块中配置这个参数。

import { Module } from '@nestjs/common';
import { RedisModule } from 'nestjs-redis';
    
@Module({
  imports: [
    RedisModule.register({
      name: 'redis_connection',
      host: 'localhost',
      port: 6379,
    }),
  ],
})
export class AppModule {}

在这个示例中,我们将Redis连接的名称设置为redis_connection,主机为localhost,端口为6379。这个对象是适用于绝大多数情况的简单配置,可以按照需要添加其他属性。

结论

以上是解决此错误的解决方案。确保正确地配置REDIS_MODULE_OPTIONS并将其包含在应用程序的根模块中是解决这个错误的关键。