Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mongodb typegoose中枚举的建模列表_Mongodb_Enums_Typegoose - Fatal编程技术网

Mongodb typegoose中枚举的建模列表

Mongodb typegoose中枚举的建模列表,mongodb,enums,typegoose,Mongodb,Enums,Typegoose,我一直试图在typegoose中对枚举数组进行建模,如下所示,但一直存在编译错误 export enum USER_ROLES { ADMIN = 'admin', SUBSCRIBER = 'subs', NONE = 'none', } export class User { @prop({ type: () => [String], enum: USER_ROLES, default: [USER_ROLES.SUBSCRIBER] })

我一直试图在typegoose中对枚举数组进行建模,如下所示,但一直存在编译错误

export enum USER_ROLES {
    ADMIN = 'admin',
    SUBSCRIBER = 'subs',
    NONE = 'none',
}


export class User {
    @prop({ type: () => [String], enum: USER_ROLES, default: [USER_ROLES.SUBSCRIBER] })
    roles?: USER_ROLES[];
}

export const UserModel = getModelForClass(User, {
    schemaOptions: {
        collection: 'users',
        timestamps: {
            createdAt: 'createdAt',
            updatedAt: 'createdAt',
        },
    }
});
我收到的错误消息是:

错误:“User.roles”的类型无效!类型为:“函数字符串(){[本机代码]}”[E009]


请问如何正确操作?

今天早上早些时候,我遇到了类似的问题,正确的方法如下:

导出类用户{
@属性({type:String,enum:USER\u ROLES,默认值:[USER\u ROLES.SUBSCRIBER]})
角色?:用户角色[];
}

type
告诉数组将容纳的对象类型。在这种情况下,它将是
String
,其值可以是
admin
subs
、或
none

谢谢@Nishant。我已经想出了解决办法,但忘了把它加在这里。