问题描述
在尝试打开我通过 GitHub 分叉的项目时遇到以下错误。
success open and validate gatsby-configs - 0.492s
ERROR #11331 PLUGIN
Invalid plugin options for "gatsby-source-contentful":
- "accesstoken" is required
not finished load plugins - 6.220s
我进行了多次编辑,但我无法处理该项目,因为我目前无法打开它。我确实有一个内容丰富的帐户,但我对 Gatsby 还很陌生,并且不知道如何为 accesstoken
设置新值。
我是否需要通过 process.env
执行此操作,或者我是否完全错过了该过程?
谢谢,感谢您的帮助。
解决方法
我是否需要通过 process.env
执行此操作,或者我是否错过了该过程
完全?
当然,您需要向 Gatsby 和 Contentful 提供您的访问令牌。默认情况下,Gatsby 在分别运行 .env.development
和 .env.production
时采用 gatsby develop
和 gatsby build
,因此您需要将凭据添加到 environment files。
首先,在模块导出上方的 gatsby-node.js
中添加以下代码段:
require("dotenv").config({
path: `.env.${process.env.NODE_ENV}`,})
这将告诉 Gatsby 在每个运行命令中需要获取哪个文件。
下一步是填写环境文件,在它们两个中添加:
CONTENTFUL_ACCESS_TOKEN=123456
CONTENTFUL_SPACE_ID=78910
所以,最后您的 gatsby-config.js
应该如下所示:
// In your gatsby-config.js
module.exports = {
plugins: [
{
resolve: `gatsby-source-contentful`,options: {
spaceId: process.env.CONTENTFUL_SPACE_ID,accessToken: process.env.CONTENTFUL_ACCESS_TOKEN,},],}