我在流星简单架构中已经看过很多次这种“标签”用法。只是不知道为什么我们需要这样一个领域。
const Product = new SimpleSchema({ _id: {
type: String,
label: "Product ID" } })
由于
德里克
答案 0 :(得分:1)
如果您只使用简单架构,label将纯粹用于显示更加人性化/可理解的错误消息格式,如@Khang所述。
如果您使用autoform生成基于简单模式的for,则理想情况下,该字段的标签将根据simple-schema中定义的内容自动生成。但是如果你想更详细地展示它,你可以通过专门定义标签来覆盖它。
例如:
userName :{
type: String,
...
}
将生成带有输入文本框的表单。默认情况下,此输入框的标签为“用户名”
userName:{
type: String,
label: "someTextHere",
...
}
将生成一个输入文本框。此输入框的标签现在将是“someTextHere”而不是“User Name”
答案 1 :(得分:0)
这适用于Autoform包:https://github.com/aldeed/meteor-autoform
因此,除非你使用它,否则你不需要它。
答案 2 :(得分:0)
IMO标签是该字段的可读名称,它有助于代码更具语义性。它在调试时也很有用,例如,如果你有一个架构字段,如:
// ...
appId: {
type: String,
},
// ...
然后,如果您在插入时未提供appId
值,则会收到此错误Error: App id is required
。可能很难知道什么是错误的,因为SimpleSchema会自动重新格式化字段名称。如果您提供标签字段:
// ...
appId: {
type: String,
label: 'App Id of the document',
},
// ...
然后错误消息将是:Error: App Id of the document is required
,更容易找到此消息的问题。