我正在使用gatsby源内容插件,downloadLocal
设置为true
:
{
resolve: "gatsby-source-contentful",
options: {
spaceId: `my_space_id`,
accessToken: `my_access_token`,
downloadLocal: true,
},
},
然而,当我运行gatsby develop
时,Gatsby似乎在.cache中找不到本地文件
错误:ENOENT:没有这样的文件或目录,打开'/basedir/.cache/caches/gatsby-transformer sharp/diskstore-df6bcaa954c0509aba9763a79d7b38ae.lock'
错误
ENOENT:没有这样的文件或目录,打开'/basedir/.cache/caches/gatsby-transformer sharp/diskstore-76c631915cff90316264f3f99de26b5c.lock'
和:
WorkerError:处理/basedir/.cache/gatsby源文件系统/02a25f085c33da92b05fb482655e7db3/FILENAME_HERE.jpg失败
原始错误:/basedir/node_modules/cwebp-bin/vender/cwebp:加载共享库时出错:libpng12.so.0:无法打开共享对象文件:没有这样的文件或目录
当我查看.cache/gatsby源文件系统和.cache/caches/gatsby transformer sharp时,我发现这些文件确实存在。
这是我在gatsby-node.js:中的查询
allContentfulBlogPost {
nodes {
featuredImage {
localFile {
childImageSharp {
fluid(maxWidth: 100) {
src
srcSet
...
}
}
}
}
}
}
我试过清除.cache。我已经把它们放进了gatsby-config.js:中
{
resolve: `gatsby-source-filesystem`,
options: {
name: `cache`,
path: `${__dirname}/.cache`,
},
},
{
resolve: `gatsby-source-filesystem`,
options: {
name: `cache-gatsby-transformer-sharp`,
path: `${__dirname}/.cache/caches/gatsby-transformer-sharp`,
},
},
{
resolve: `gatsby-source-filesystem`,
options: {
name: `cache-gatsby-source-filesystem`,
path: `${__dirname}/.cache/gatsby-source-filesystem`,
},
},
我也看到过,但我不认为这是完全相同的问题。
我应该怎么做才能让Gatsby在.cache中找到那些文件和目录?
Gatsby在Gatsby站点根目录的.cache文件夹中保留一个数据和渲染资产的缓存,这样它就不必重复处理优化的资源。
尝试:gatsby clean
,然后是gatsby develop
。
关注此链接了解更多信息。