我有一个带有一些数据的 Sanity CMS 和一个 Gatsby 前端,它通过 GraphQL 从 Sanity 获取数据。这在大多数情况下效果很好,但我需要一个自定义端点,它根据一些任意逻辑返回一个文档。
我已经尝试过自定义插件,但我不知道如何使用它们发布新端点。
我有一个带有一些数据的 Sanity CMS 和一个 Gatsby 前端,它通过 GraphQL 从 Sanity 获取数据。这在大多数情况下效果很好,但我需要一个自定义端点,它根据一些任意逻辑返回一个文档。
我已经尝试过自定义插件,但我不知道如何使用它们发布新端点。
最轻量级的解决方案可能是在您的 Studio中安装Dashboard 工具。简而言之,你所做的是
sanity install @sanity/dashboard
src/dashboardConfig.js
文件并使其包含以下内容:export default {
widgets: [
{
name: 'project-info'
},
{
name: 'project-users'
}
]
}
sanity.json
通过将此附加到您的文件中,让您的 Studio 知道您已经实现了自己的仪表板配置:{
"implements": "part:@sanity/dashboard/config",
"path": "./dashboardConfig.js"
}
恭喜,您的工作室中现在有了一个带有两个小部件的仪表板!通过在本地运行它来确认这一点,并将浏览器指向http://localhost:3333/dashboard。
接下来,您将要创建自己的小部件。对于一个快速的开始,抓住一个已经有效的瘦例子
sanity init plugin https://github.com/sanity-io/plugin-template-dashboard-widget-cats/archive/master.zip
上面的cats
Widget 将安装到/plugins
您的 Studio 的文件夹中。继续编辑它(它基本上只是一个 React 组件)以获得你想要的结果。或者将其用作如何创建自己的小部件的指南。
希望这可以帮助你!