我正在遵循https://www.gatsbyjs.org/blog/2019-03-04-new-schema-customization/的一些说明,我想使用一些特殊的解析器来创建一些自定义类型,以解析不同平面文件类型之间的关系。我正在使用gatsby-source-filesystem和remark转换器,但是除非我根据sourceInstanceName进行过滤/应用,否则我看不到使用节点API将某些文件分配为一种类型并将其他文件分配为另一种类型的任何方法。是否有更好的方法来区分不同来源的节点?
示例:我有两种类型的内容,着陆页和促销块,存储在src / content / landing-pages和src / content / promo-blocks中。登陆页面可以引用Promo块,我想为每个块修改架构以显示两者之间的正确关系,并添加解析器以查询整个关系。我在gatsby-config中有一个单独的来源,但是所有项目似乎都以allFile或allMarkdownRemark结尾。
是否应该将解析程序添加到allMarkdownRemark中的所有项目,而不管该关系对于该文件是否有效?如何区分allFile或allMarkdownRemark类型的单独文件的不同架构?