sanity io 中的 schemaTypes
schemaTypes in sanity io
我在 Sanity io 的 schemaTypes 中遇到问题
所有细节都在下面提到
有什么问题可以问我
userSchema.js
name:'abouts',
title:'Abouts',
type: 'document',
fields:[
{
name:'title',
title:'Title',
type:'string'
},
{
name:'description',
title:'Description',
type:'string'
},
{
name:'imgUrl',
title:'ImgUrl',
type: 'image',
options: {
hotspot: true,
},
},
]
}
schema.js
import createSchema from 'part:@sanity/base/schema-creator'
import schemaTypes from 'all:part:@sanity/base/schema-type'
import { userSchema } from './userSchema'
export default createSchema({
name: 'default',
types: schemaTypes.concat([userSchema]),
})
现在,schemaTypes 是一个对象,我们可以从“typeof”运算符中检查,我不明白我们如何使用 .concat() 与对象,如 .concat() 是一个数组函数,可以应用于数组,那么 schemaTypes.concat([userSchema]) 是如何正常工作的??
请帮我解决这个问题。
谢谢
在 JavaScript 你永远不会从 typeof
得到 'array'
。 typeof
将 return 'object'
用于除函数(和原始 null
)之外的任何 non-primitive。
我希望您正在寻找的是 Array.isArray()
方法。记录Array.isArray(schemaTypes)
应该returntrue
,意思是schemaTypes
其实是一个数组,可以使用.concat()
方法。
我在 Sanity io 的 schemaTypes 中遇到问题 所有细节都在下面提到 有什么问题可以问我
userSchema.js
name:'abouts',
title:'Abouts',
type: 'document',
fields:[
{
name:'title',
title:'Title',
type:'string'
},
{
name:'description',
title:'Description',
type:'string'
},
{
name:'imgUrl',
title:'ImgUrl',
type: 'image',
options: {
hotspot: true,
},
},
]
}
schema.js
import createSchema from 'part:@sanity/base/schema-creator'
import schemaTypes from 'all:part:@sanity/base/schema-type'
import { userSchema } from './userSchema'
export default createSchema({
name: 'default',
types: schemaTypes.concat([userSchema]),
})
现在,schemaTypes 是一个对象,我们可以从“typeof”运算符中检查,我不明白我们如何使用 .concat() 与对象,如 .concat() 是一个数组函数,可以应用于数组,那么 schemaTypes.concat([userSchema]) 是如何正常工作的??
请帮我解决这个问题。 谢谢
在 JavaScript 你永远不会从 typeof
得到 'array'
。 typeof
将 return 'object'
用于除函数(和原始 null
)之外的任何 non-primitive。
我希望您正在寻找的是 Array.isArray()
方法。记录Array.isArray(schemaTypes)
应该returntrue
,意思是schemaTypes
其实是一个数组,可以使用.concat()
方法。