问题描述
我有一个使用Typescript的节点应用程序,我正在尝试根据TypeORM的文档创建新的迁移。
首先,我安装了CLI,并设置了this之类的连接选项,并在尝试运行此命令时:
npm run typeorm migration:create -- -n migrationNameHere
我收到以下错误:
在创建迁移期间出错:TypeError:无法读取未定义的属性“ startsWith” 在对象。 (... \ src \ commands \ MigrationCreateCommand.ts:62:37) 在步骤(... \ node_modules \ typeorm \ node_modules \ tslib \ tslib.js:141:27) 在Object.throw(... \ node_modules \ typeorm \ node_modules \ tslib \ tslib.js:122:57) 在被拒绝(... \ node_modules \ typeorm \ node_modules \ tslib \ tslib.js:113:69)npm ERR! 代码ELIFECYCLE npm ERR! errno 1 npm错误! backend@0.0.1 typeorm:节点 --require ts-node / register ./node_modules/typeorm/cli.js“ migration:create”“ -n”“ migrationNameHere”`npm错误!退出状态1
这些是我在package.json中的嵌套依赖项:
我的节点版本为 v12.14.1 ,nestjs为 7.0.0 ,nestjs / typeorm为 7.1.3
我的app.module.ts是这样的:
TypeOrmModule.forRoot({
type: 'mysql',host: database().host,port: parseInt(database().port),username: database().username,password: database().password,database: database().schema,entities: [Question,QuestionOption],migrations: ['migration/*.js'],cli: {
migrationsDir: 'migration'
},synchronize: true,})
有人遇到过这种问题吗?
解决方法
尝试添加带有迁移目标的标记,例如npx typeorm migration:create -n YourName -d src/migrations