【发布时间】:2021-02-06 19:29:20
【问题描述】:
在配置迁移的情况下执行命令 npm run start: dev 时,我收到错误 import {MigrationInterface, QueryRunner} from "typeorm"; SyntaxError: 不能在模块外使用 import 语句
【问题讨论】:
-
ormconfig.ts
const config: ConnectionOptions = { type: 'mysql', host: process.env.DATABASE_HOST, port: parseInt(process.env.DATABASE_PORT), username: process.env.DATABASE_USER, password: process.env.DATABASE_PASSWORD, database: process.env.DATABASE_NAME, entities: [__dirname + '/**/*.entity{.ts,.js}'], synchronize: false, logging: true, migrationsRun: true, migrations: [__dirname + '/../migrations/**/*{.ts,.js}'], cli: { migrationsDir: './migrations', } } export = config; -
app.module.ts
ConfigModule.forRoot(), TypeOrmModule.forRoot({...ormconfig, keepConnectionAlive: true, autoLoadEntities: true}), -
package.json
"typeorm": "ts-node -r tsconfig-paths/register ./node_modules/typeorm/cli.js --config ./src/ormconfig.ts", "migration:generate": "npm run typeorm migration:generate -- -n", "migration:run": "npm run typeorm migration:run", "migration:revert": "npm run typeorm migration:revert" -
迁移工作正常
-
如果我删除迁移文件,命令
npm run start: dev工作正常。