Gatsby 如何在上传到Algolia之前更改slug

Gatsby 如何在上传到Algolia之前更改slug,gatsby,algolia,contentful,Gatsby,Algolia,Contentful,我正在我的盖茨比网站上实现Algolia搜索。我需要正确格式化我的内容的片段,以便Algolia获得正确的链接 我的查询从Contentful获得的slug类似于/icon name/ 我需要它匹配从我的Gatsby-node.js文件路径创建的路径:/design resources/icons/${node.slug}/ 在从Gatsby-node.js创建路径后,是否可以获得该路径,或者在上传到Algolia之前,是否有方法转换下面的图标查询 我的问题 Algolia变压器 使用您的变压器

我正在我的盖茨比网站上实现Algolia搜索。我需要正确格式化我的内容的片段,以便Algolia获得正确的链接

我的查询从Contentful获得的slug类似于
/icon name/

我需要它匹配从我的Gatsby-node.js文件路径创建的路径:
/design resources/icons/${node.slug}/

在从Gatsby-node.js创建路径后,是否可以获得该路径,或者在上传到Algolia之前,是否有方法转换下面的图标查询

我的问题 Algolia变压器
使用您的
变压器

const queries = [
  {
    query: iconQuery,
    transformer: ({ data }) =>
      data.allContentfulIcon.edges.map(({ node }) => {
        node.slug = /design-resources/icons/${node.slug}/          
      
        return node;
    }),
  },
];

module.exports = queries;

非常感谢。在变压器中对其进行变换是有意义的。运行此代码时,我收到此错误节点。slug=
${/design resources/icons/${node.slug}/}
^SyntaxError:正则表达式标志无效。我拆下了支架,它成功了。这是我最后的密码。node.slug=
/design resources/icons/${node.slug}/
;感谢@GGlass提供的见解。我已经用最终代码更新了答案
const queries = [
  {
    query: iconQuery,
    transformer: ({ data }) =>
      data.allContentfulIcon.edges.map(({ node }) => node), // optional
  },
];

module.exports = queries;
const queries = [
  {
    query: iconQuery,
    transformer: ({ data }) =>
      data.allContentfulIcon.edges.map(({ node }) => {
        node.slug = /design-resources/icons/${node.slug}/          
      
        return node;
    }),
  },
];

module.exports = queries;