错误.[ERR_REQUIRE_ESM]:必须使用import来加载ES模块 &



这些是我的代码。

index.ts

import { MikroORM } from "@mikro-orm/core"
import { __prod__ } from "./constants";
import { Post } from "./entities/Post";
import microConfig from "./mikro-orm.config";
const main = async () => {
const orm = await MikroORM.init(microConfig);
const post = orm.em.create(Post, {title: "my first post"});
await orm.em.persistAndFlush(post);
console.log("--------------sql2---------------");
await orm.em.nativeInsert(Post, {title:"my first Post 2"});
};
main().catch((err) => {
console.log(err);
});

mikro-orm.config.ts

import { __prod__ } from "./constants";
import { Post } from "./entities/Post";
import { MikroORM } from "@mikro-orm/core";
import path from "path";

export default {
migrations: {
path: path.join(__dirname, './migrations'), // path to the folder with migrations
pattern: /^[w-]+d+.[tj]s$/, // regex pattern for the migration files
},
entities: [Post],
dbName: "lireddit",
type: "postgresql",
debug: !__prod__,
} as Parameters<typeof MikroORM.init>[0];

当我执行这个命令时,我得到了这个错误

npx mikro-orm migration:create
--> SyntaxError: Cannot use import statement outside a module

然后我试图通过在包中添加这个来修复这个错误。

"type": "module",
--> [ERR_REQUIRE_ESM]: Must use import to load ES Module: C:forgitfullstack-practicesrcmikro-orm.config.ts

https://www.youtube.com/watch?v=I6ypD7qv3Z8代码与视频中完全相同…(~ 32:00)

但是在我的电脑上,它不工作。

我该怎么做来解决这个问题?

节点版本可能存在故障

最新更新