Gatsby 错误持续状态:无法克隆函数

Posted

技术标签:

【中文标题】Gatsby 错误持续状态:无法克隆函数【英文标题】:Gatsby Error persisting state: function could not be cloned 【发布时间】:2022-01-08 00:41:37 【问题描述】:

最近我从 Gatsby V2 迁移到 V4,使用 official docs,因为我正面临这个警告并且它是这样的,

warn Error persisting state: function createFolder(folderData) 
    return client.mutate(
      mutation: mutations.createFo...<omitted>...  could not be cloned.

我正在使用节点版本:14.15.4 和 npm 版本:6.14.10

之前有没有人遇到过这个错误或者建议任何方法来解决这个问题。

【问题讨论】:

嗯,文档从字面上说是从 v2 到 v3。你试过 v3 中的项目还是直接从 v2 转到 v4? @FerranBuireu 我使用了文档中提到的命令 "dependencies": "gatsby": "^3.0.0" 它成功将版本更新到 V3,但是,在使用此命令更新 gatsby-plugins 时npm install gatsby-plugin-sharp@latest 它不适用于 V3 所以,我使用这个命令将它们一起更新到最新版本,npm install gatsby@latest 所以问题是从 v2 到 v3,而不是到 v4。您是否尝试将您的 npm 版本更新到版本 7 以运行 --legacy-peer-deps 标志? 【参考方案1】:

我建议将您的 npm 版本更新到版本 7 以便运行:

npm install gatsby@latest --legacy-peer-deps

还有:

npm outdated

将您想要的版本与最新版本进行比较。

请记住,如果某些依赖项没有更新到任何相应的工作版本,您的项目可能无法运行。但是,对于 gatsby-plugin-sharp,作为官方维护的插件,我猜它会与 v3 兼容(他们最近才发布了 v4,所以......)。

在提出这些建议之前,我还建议在每个进程中清理缓存以及重新安装依赖项(或锁定的依赖项),如果需要,删除你的 node_modules、package-lock.json 等。

分享您的配置详细信息 (gatsby-config.js),看看版本 3 中是否需要重构。

【讨论】:

我只使用低于 7 的 npm 版本,其他一切正常,构建也成功。剩下的只有我上面提到的警告,所以我正在努力寻找解决方案。 正如我所说,尝试分享您的gatsby-config.js 以查看是否有线索可以从那里解决问题。如果该站点按预期工作,则会发出警告(除了它并不理想),它永远不会破坏您的编译或您的站点。

以上是关于Gatsby 错误持续状态:无法克隆函数的主要内容,如果未能解决你的问题,请参考以下文章

Gatsby 站点地图:GraphQLError:语法错误:预期名称,找到 <EOF>

gatsby-source-wordpress 插件:我无法将数据从 WP 拉入 Gatsby(连接错误)

Gatsby 错误无法读取 null 的“固定”属性

无法克隆 <select> 并出现“.select2 不是函数”错误

Gatsby 插件错误“未处理的拒绝减速器可能无法调度操作。”

未捕获的类型错误:无法使用 Gatsby 和 graphQl 读取未定义的属性“数据”