eggjs在使用sequelize-typescript在无法访问getqueryinterface函数 项目是使用egg.js+ sequelize-typescript在构建表模型的时候启动项目出现这个问题
import { Idate } from './common';
import { Column, IsUUID, DataType, Model, PrimaryKey, Table, AllowNull, Default } from 'sequelize-typescript';
interface IUser extends Idate {
Id:string
username: string
password: string
sex: number
avatar: string
city: string
enabled: number
accountBalance: number
}
@Table
export default class User extends Model<IUser> {
@IsUUID(4)
@PrimaryKey
@AllowNull(false)
@Default('')
@Column
Id: string;
@AllowNull(false)
@Column({
comment: '账号',
})
username: string;
@AllowNull(false)
@Column({
comment: '姓名',
})
realName: string;
@AllowNull(false)
@Column({
type: DataType.STRING,
comment: '密码',
})
password: string;
@Column({
type: DataType.INTEGER,
comment: '性别',
})
sex: number;
@Column({
type: DataType.STRING,
comment: '头像',
})
avatar: string;
@Column({
type: DataType.STRING,
comment: '城市',
})
city: string;
@AllowNull(false)
@Default(0)
@Column({
type: DataType.INTEGER,
comment: '启用状态: 0启用,1禁用',
})
enabled: number;
@Column({
type: DataType.DECIMAL,
comment: '账户余额',
})
accountBalance: number;
@Column({
type: DataType.DATE,
})
created_at: string;
@Column({
type: DataType.DATE,
})
updated_at: string;
@Column({
type: DataType.DATE,
})
deleted_at: string;
}
最终问题是egg-sequelize-ts与sequelize-typescript版本相互不兼容 我当时用的版本是
"egg-sequelize": "6.0.0",
"egg-sequelize-ts": "0.2.3-0",
"mysql": "^2.18.1",
"sequelize-cli-typescript": "3.2.0-c",
降级版本后版本
"egg-sequelize": "5.2.2",
"egg-sequelize-ts": "0.2.3-0",
"sequelize-cli-typescript": "3.2.0-c",