如何创建具有默认值的对象数组?
Posted
技术标签:
【中文标题】如何创建具有默认值的对象数组?【英文标题】:How to create an array of objects with default values? 【发布时间】:2022-01-07 04:37:56 【问题描述】:const schema = new mongoose.Schema(
login: type: String, unique: true, required: true,
password: type: String, required: true,
chatlist: [
channelname: type: String, default: "frontend",
channelid: type: String, default: "619a6bfe5b0931f1e5dbaf2c"
,
channelname: type: String, default: "backend",
channelid: type: String, default: "619a71002954ba23a951bb8f"
,
channelname: type: String, default: "devops",
channelid: type: String, default: "619d69c190a85a40893b6522"
,
]
)
上面的代码不起作用 当新用户注册时,我想在他的个人资料中添加默认聊天 接下来是用户必须能够从数据库中添加/删除聊天 我该怎么做?聊天需要是对象还是文档?
【问题讨论】:
【参考方案1】:const schema = new mongoose.Schema(
chatlist:
type: Array,
defualt: []
)
所以要在数组中有一个结构,我个人会使用错误处理使请求正确。
更多信息请访问site
【讨论】:
【参考方案2】:没有找到任何好的解决方案,所以我就这样做了
const schema = new mongoose.Schema(
login: type: String, unique: true, required: true,
password: type: String, required: true,
chatlist: [
channelname: String,
channelid: String
]
)
const user = await MONGO_user.create(
login: login,
password: hashPassword,
)
user.chatlist.push(
channelname: "frontend",
channelid: "619a6bfe5b0931f1e5dbaf2c"
,
channelname: "backend",
channelid: "619a71002954ba23a951bb8f"
,
channelname: "devops",
channelid: "619d69c190a85a40893b6522"
)
await user.save()
【讨论】:
您的答案可以通过额外的支持信息得到改进。请edit 添加更多详细信息,例如引用或文档,以便其他人可以确认您的答案是正确的。你可以找到更多关于如何写好答案的信息in the help center。以上是关于如何创建具有默认值的对象数组?的主要内容,如果未能解决你的问题,请参考以下文章