繁体   English   中英

TypeORM TypeError:无法读取未定义的属性“findOne”

[英]TypeORM TypeError: Cannot read property 'findOne' of undefined

我正在使用 Typescript 实现 TypeORM,并尝试创建一个扩展 TypeORM 存储库的服务:

export class UserService extends Repository<User> {

  // ... my other service methods

}

之后,我尝试从服务( userService.findOne(...) )调用存储库findOne方法,但出现 TypeORM 错误:

TypeError: Cannot read property 'findOne' of undefined
    at UserService.Repository.findOne (node_modules/typeorm/repository/Repository.js:174:29)

在这一行的 TypeORM 库中,我知道manager是未定义的:

Repository.prototype.findOne = function (optionsOrConditions, maybeOptions) {
    return this.manager.findOne(this.metadata.target, optionsOrConditions, maybeOptions);
};

在我的 TypeORM 配置下方:

createConnection({
    type: "mysql",
    url: "...",
    synchronize: true,
    logging: false,
    entities: [ User ],
    cli: { entitiesDir: "src/models" },
})

有人有同样的问题,还是我错过了配置中的某些内容?
先感谢您:! :-)

我遇到了这个问题,因为我的 ormconfiguration 在生产中运行时没有考虑 js 文件之前我有:

 entities: ["${rootDir}/entities/**/*.ts"],
 migrations: ["${rootDir}/database/migrations/**/*.ts"],
 subscribers: ["${rootDir}/database/subscribers/**/*.ts"],

后:

 entities: ["${rootDir}/entities/**/*.{js,ts}"],
 migrations: ["${rootDir}/database/migrations/**/*.{js,ts}"],
 subscribers: ["${rootDir}/database/subscribers/**/*.{js,ts}"],

注意区别.ts 和.{js,ts}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM