You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Sequelize TypeScript项目执行Seeders遇import语法错误求助

Sequelize TypeScript项目Seeders执行报错求助

我在Sequelize TypeScript项目中执行数据填充(seeders)操作时遇到语法错误,相关配置与执行细节如下:

.sequelizerc 配置

import '@babel/register';

import path from 'path';

const settings = {
  config: path.resolve('src', 'config', 'index.js'),
  'migrations-path': path.resolve('src', 'data', 'migrations'),
  'models-path': path.resolve('src', 'data', 'models'),
  'seeders-path': path.resolve('src', 'data', 'seeders'),
};

export default settings;

执行命令

我使用npm run apply-seeders命令执行seeders,该命令对应的实际脚本为:

rm -rf dist && npm run build && node -r dotenv-flow/config ./node_modules/.bin/sequelize db:seed:all --debug

报错信息

执行后立即抛出以下错误:

/Users/vr/Desktop/code/vr/api/.sequelizerc:1
import '@babel/register';
^^^^^^

SyntaxError: Cannot use import statement outside a module
    at Object.compileFunction (node:vm:360:18)
    at wrapSafe (node:internal/modules/cjs/loader:1055:15)
    at Module._compile (node:internal/modules/cjs/loader:1090:27)
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1180:10)
    at Module.load (node:internal/modules/cjs/loader:1004:32)
    at Function.Module._load (node:internal/modules/cjs/loader:839:12)
    at Module.require (node:internal/modules/cjs/loader:1028:19)
    at require (node:internal/modules/cjs/helpers:102:18)
    at loadRCFile (/Users/vr/Desktop/code/vr/api/node_modules/sequelize-cli/lib/core/yargs.js:25:77)
    at Object.<anonymous> (/Users/vr/Desktop/code/vr/api/node_modules/sequelize-cli/lib/core/yargs.js:28:63)

我清楚这个错误是因为Node默认使用CommonJS模块规范,仅识别require和module.exports,无法处理import/export语法导致的。下面附上项目的tsconfig.json和.babelrc配置文件,希望能找到解决方法,让Sequelize可以识别所有文件中的import/export语句。

tsconfig.json 配置

{
  "compilerOptions": {
    "lib": ["es2020"],
    "module": "commonjs",
    "moduleResolution": "node",
    "target": "es2020",
    "esModuleInterop": true,
    "skipLibCheck": true,
    "forceConsistentCasingInFileNames": true,
    "noImplicitAny": false,
    "outDir": "dist",
    "experimentalDecorators": true,
    "emitDecoratorMetadata": true,
    "baseUrl": ".",
    "paths": {
      "server/*": ["src/server/*"],
      "tests/*": ["src/tests/*"],
      "data/*": ["src/data/*"],
      "config": ["src/config"],
    }
  }
}

.babelrc 配置

{
  "presets": [
    [
      "@babel/preset-env",
      {
        "targets": {
          "node": "current"
        }
      }
    ]
  ],
  "plugins": [
    [
      "module-resolver",
      {
        "root": [
          "./src"
        ],
        "alias": {
          "utils": "./src/server/utils"
        }
      }
    ]
  ]
}

内容的提问来源于stack exchange,提问作者PirateApp

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 16:45:32