Sanity IO CMS — в чем разница между sanity.config.js и sanity.json

Работа с проектом Sanity версии 3 для предоставления серверных данных.

Однако я заметил, что есть два файла, которые имеют дело с настройками/конфигурациями проекта.

  1. PROJECT_DIR/sanity.config.js - включается с самого начала
  2. PROJECT_DIR/sanity.json - не включается при запуске

Мой вопрос

  1. Какая разница между двумя
  2. Как мне обрабатывать повторяющиеся настройки, такие как plugins, которые уже определены в sanity.config.js, мне нужно определить их снова в 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,
  },
})

Буду ли я по-прежнему включать "@sanity/desk-tool" в свой sanity.json, если deskTool() уже добавлен в массив плагинов в sanity.config.js

🤔 А знаете ли вы, что...
С JavaScript можно создавать интерактивные формы и проверять введенные пользователем данные.


84
1

Ответ:

Решено

Конфигурация на основе JSON в файле sanity.json устарела в Sanity v3 в пользу файла sanity.config.js, это одно из их критических изменений. См. документы для справки. Другими словами, если вы используете Sanity v3, не включайте sanity.json, обрабатывайте все конфигурации, которые ранее были в этом файле, на sanity.config.js.