首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >结合使用gatsby-source-graphcms和gatsby-plugin-react-i18next: GraphCMS_Locale变量类型问题

结合使用gatsby-source-graphcms和gatsby-plugin-react-i18next: GraphCMS_Locale变量类型问题
EN

Stack Overflow用户
提问于 2021-08-08 13:20:02
回答 1查看 125关注 0票数 0

我在gatsby-source-graphcms和gatsby-plugin-react-i18next之间遇到了一个挑战/可能的不兼容,对于这个问题,网上似乎没有任何信息,我想知道以前是否有人遇到过这个问题。

我正在为一个使用gatsby-source-graphcms和Gatsby文件系统路由API动态构建页面的站点添加本地化。一切都很顺利,直到我尝试使用由gatsby- GraphQL -react-i18next提供的$language插件查询变量和GraphCMS中的locale筛选器字段,这会产生以下错误消息:

Variable "$language" of type "String!" used in position expecting type "GraphCMS_Locale"

我能找到的关于类似问题的唯一参考文献是在graphcms的公共松弛上,其中有人提到因为这个原因而放弃了gatsby-source-graphcms,我更喜欢gatsby-source-graphql。然而,我对此犹豫不决,因为这基本上意味着为我重写整个网站!?

我一直在尝试寻找一些方法来提供页面查询的第二个变量,它复制了来自gatsby-plugin-react-i18next的值$language变量,但被声明为GraphCMS的正确数据类型,或者可能是以某种方式将字符串转换为GraphCMS_locale,但到目前为止还没有成功。

有没有人能找到一种方法让gatsby-source-graphcms很好地使用gatsby-plugin-react-i18next?

这个的WIP代码可以在这里看到:https://github.com/binghamchris/paddelbuch/blob/feature-i18n/src/pages/index.js

如果代码在某处有点糟糕,我深表歉意。我不是web开发人员(这是我自愿参与的一个社区项目,那里没有专业的web开发人员),我只是在钻研复制粘贴代码?

提前感谢任何人所能提供的任何帮助

EN

回答 1

Stack Overflow用户

发布于 2021-08-12 15:00:58

受到@notrab友好帮助的启发,我找到了一个超级好用的变通方法,以防对其他人有帮助:我在gatsby-node.js中添加了以下内容:

代码语言:javascript
复制
exports.createSchemaCustomization = ({
  actions: { createTypes, printTypeDefinitions }
}) => {
  createTypes(`
  type Locale implements Node {
    language: GraphCMS_Locale
  }
  `);
};

这会将i18next转换数据中language字段上的GraphQL数据类型更改为GraphCMS_Locale,这意味着gatsby-plugin-react-i18nextgatsby-source-graphcms都需要匹配...到目前为止,它似乎在开发模式下工作!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68701185

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档