javascript Sanity IO CMS -sanity.config.js和sanity.json之间的区别是什么

jqjz2hbq  于 2023-01-11  发布在  Java
关注(0)|答案(1)|浏览(87)

使用版本3的健全项目来提供后端数据。
不过,我注意到有两个文件处理项目设置/配置。

  1. PROJECT_DIR/sanity.config.js-启动时包含
  2. PROJECT_DIR/sanity.json-启动时不包括
    "我的问题是"
    1.这两者之间有什么区别
    1.我应该如何处理重复的设置,例如已经在sanity.config.js中定义的plugins,我是否应该在sanity.json中再次定义它们?
    请帮助,因为我找不到任何文档来解决我的上述问题,

示例摘自sanity docssanity.json

{
  "root": true,
  "project": {
    "name": "Movies",
    "basePath": "/studio"
  },
  "api": {
    "projectId": "<yourProjectID>",
    "dataset": "production"
  },
  "plugins": [
    "@sanity/base",
    "@sanity/components",
    "@sanity/default-layout",
    "@sanity/default-login",
    "@sanity/desk-tool",
    "@sanity/google-maps-input"
  ],
  "parts": [
    {
      "name": "part:@sanity/base/schema",
      "path": "./schemas/schema.js"
    }
  ]
}

还有一个例子来自我的项目sanity.config.js

import {defineConfig} from 'sanity'
import {deskTool} from 'sanity/desk'
import {visionTool} from '@sanity/vision'
import {schemaTypes} from './schemas'

export default defineConfig({
  name: 'default',
  title: 'app-title',

  projectId: '<project-id>',
  dataset: 'production',

  plugins: [deskTool(), visionTool()],

  schema: {
    types: schemaTypes,
  },
})

如果deskTool()已添加到sanity.config.js的插件数组中,我是否仍将"@sanity/desk-tool"包含在sanity.json

nbysray5

nbysray51#

在Sanity v3上,sanity.json文件中基于JSON的配置已经被弃用,取而代之的是sanity.config.js文件,这是他们的突破性变化之一。请参阅文档以获取参考。换句话说,如果您使用Sanity v3,请不要包括sanity.json,在sanity.config.js上处理之前在该文件中的所有配置。

相关问题