使用 sequelize-typescript not 运行 对 beforeConnect 钩子进行 Sequelize

Sequelize beforeConnect hook with sequelize-typescript not running

我正在尝试 运行 sequelize beforeConnect 挂钩,以便能够在 运行ning sequelize 实例上更改凭据。我真的是复制粘贴sequelize docs中写的内容:

https://sequelize.org/master/manual/hooks.html#connection-hooks

            this.sequelize = new Sequelize({ config } as SequelizeOptions);
            this.sequelize.beforeConnect((config) => {
                config.password = "postgres";
            })

我正在使用 "sequelize": "6.5.0""sequelize-typescript": "2.1.0"

显示此错误:

Property 'beforeConnect' does not exist on type 'Sequelize'. Did you mean to access the static member 'Sequelize.beforeConnect' instead?ts(2576)

如果我尝试以静态方法访问它,它就不会 运行 Sequelize.beforeConnect(...)

至少当我将它用作静态方法时它会编译但说 config.password 是只读的。这不是因为 sequalize 文档准确地显示了这个。那只是来自 sequelize-typescript 的错误类型吗?

请参阅此 GitHub link,它帮助我解决了 beforeConnect 问题。 https://github.com/sequelize/sequelize/issues/12646

解决方法适用于 Sequelize v6.6.2 和 Sequelize-typescript v2.1.0。