【已解决】使用rollup 对 typeorm 进行打包,运行出错:Cannot use import statement outside a module
发布于 3 年前 作者 gocpplua 3846 次浏览 来自 问答

按照typeorm的文档创建demo,同时使用 npm start运行正常。 但是因为我原有的ts程序是使用rollup进行打包,我想要将typeorm集成进去,使用rollup -c,一切正常。 但是运行的时候:node main.js,出错:

$ node ts_output/main.js 
/data/src/entity/User.ts:1
import {Entity, PrimaryGeneratedColumn, Column} from "typeorm";
^^^^^^

SyntaxError: Cannot use import statement outside a module
    at wrapSafe (internal/modules/cjs/loader.js:984:16)
    at Module._compile (internal/modules/cjs/loader.js:1032:27)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1097:10)
    at Module.load (internal/modules/cjs/loader.js:933:32)
    at Function.Module._load (internal/modules/cjs/loader.js:774:14)
    at Module.require (internal/modules/cjs/loader.js:957:19)
    at require (internal/modules/cjs/helpers.js:88:18)
    at /data/node_modules/typeorm/util/DirectoryExportedClassesLoader.js:42:39
    at Array.map (<anonymous>)

Google了很久,也没有找到解决方案,想请问下有没有在这方面有经验的朋友可以指导下!

1 回复

解决方案:因为我是使用rollup打包的,导致 Entity 通过配置:

entities: ['src/**/*.entity.{ts,js}']

而是直接使用:

entities: [User]
回到顶部