0

我正在寻求帮助。我在 gatsby 中使用 contentful 创建了一个博客。我希望帖子中的照片使用 gatsby-plugin-sharp 和 gatsby-image。如果我理解正确,我必须使用 gatsby-source-filesystem 插件中的 createRemoteFileNode。但我有一个问题,因为我认为我有一个错误。下面是我添加到 gatsby-node 文件的代码。

const { createRemoteFileNode } = require('gatsby-source-filesystem')

module.exports.downloadMediaFiles = ({ nodes, store, cache, createNode, createNodeId, _auth }) => {
  nodes.map(async node => {
    let fileNode

    if (node.internal.type === 'ContentfulAsset') {
      try {
        fileNode = await createRemoteFileNode({
          url: node.source_url,
          parentNodeId: node.id,
          store,
          cache,
          createNode,
          createNodeId,
          auth: _auth,
        })
      } catch (e) {
        // Ignore
      }
    }

    if (fileNode) {
      node.localFile___NODE = fileNode.id
    }
  })
}

我正在寻求帮助,并在此先感谢您。

4

0 回答 0