我想在我的 Express 应用程序中使用 TypeORM,该应用程序是 JS 而不是 TS。
首先这可能吗?
如果是,那么当我尝试使用 TypeORM 时,我会遇到以下错误:
@Entity()
^
SyntaxError: Invalid or unexpected token
at createScript (vm.js:80:10)
at Object.runInThisContext (vm.js:139:10)
at Module._compile (module.js:599:28)
我的实体文件 - Users.js
const typeorm = require("typeorm");
const Entity = typeorm.Entity;
const Column = typeorm.Column;
const PrimaryGeneratedColumn = typeorm.PrimaryGeneratedColumn;
@Entity()
module.exports = class Users {
@PrimaryGeneratedColumn
id: Number;
@Column()
name: String;
}
可以采取什么措施来解决这个问题?
最佳答案
像@Entity
这样的装饰器是TS特性,对于js你需要使用EntitySchema
类来代替。
您可以在这里找到更多示例:https://github.com/typeorm/javascript-example 。但请记住,它没有在 js 中经过充分测试。
const EntitySchema = require("typeorm").EntitySchema; // import {EntitySchema} from "typeorm";
const Category = require("../model/Category").Category; // import {Category} from "../model/Category";
module.exports = new EntitySchema({
name: "Category",
target: Category,
columns: {
id: {
primary: true,
type: "int",
generated: true
},
name: {
type: "varchar"
}
}
});
关于javascript - 带有 JS 的 TypeORM,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61877380/