【发布时间】:2020-11-09 21:29:46
【问题描述】:
我们有一个使用 Mongoose 的基于 Typescript 的 NodeJs 项目。我们正在尝试找到一种合适的方法来基于 Typescript 枚举在 Mongoose 模式上定义枚举字段。我确实浏览了文档,但找不到任何值得注意的内容。
以枚举为例:
enum ETransactionType {
Buy = 'buy',
Sell = 'sell',
}
还有一个 Mongoose 架构:
const TransactionSchema = new Schema({
user: { type: Schema.Types.ObjectId, ref: 'User' },
product: { type: Schema.Types.ObjectId, ref: 'Product' },
transactionType: {
type: ETransactionType,
default: ETransactionType.Buy
}
});
这是否足够,或者我们是否也应该从 TS 枚举中提取值,例如:
transactionType: {
type: ETransactionType,
default: ETransactionType.Buy,
enum: Object.values(ETransactionType)
}
【问题讨论】:
标签: node.js mongodb typescript mongoose enums