如何使用Gatsby将任意文件添加到/public?
我想在如何使用Gatsby将任意文件添加到/public?,gatsby,netlify,Gatsby,Netlify,我想在/src中添加一个文本文件,使其在生成目录的根目录中始终保持不变(/public) 具体来说,我需要为Netlify添加一个\u redirects,以便将子域重定向到自定义域 运行gatsby1.0alpha。无需将其放入/src。我只是将它直接添加到/public 即使它在.gitignore中,我还是使用了git add-f/public/\u重定向,提交了它,并且成功了。在构建过程中不会删除或覆盖它 另一种方法(我还没有测试过)是将文件复制到/public中的目的地,作为gats
/src
中添加一个文本文件,使其在生成目录的根目录中始终保持不变(/public
)
具体来说,我需要为Netlify添加一个\u redirects
,以便将子域重定向到自定义域
运行gatsby1.0alpha。无需将其放入
/src
。我只是将它直接添加到/public
即使它在.gitignore
中,我还是使用了git add-f/public/\u重定向,提交了它,并且成功了。在构建过程中不会删除或覆盖它
另一种方法(我还没有测试过)是将文件复制到/public中的目的地,作为gatsby node.js中的一部分。到派对上有点晚
最简单的方法是在项目根目录中添加静态
文件夹,然后在其中放置\u重定向
。然后,当您构建时,盖茨比将自动拾取该文件并将其放置在/public
文件夹中
请参见即使这个问题得到了回答,我还是找到了另一种方法,我想与大家分享。只需在构建期间复制您的\u重定向文件或任何文件,如下所示:
“build”:“gatsby build&cp src/_重定向public/”
每次构建部署时,它都会复制您的文件。我希望这能帮助别人 我通过安装gatsby plugin copy files enhanced
plugin并编辑gatsby config.js解决了类似的问题,如下所示:
{
resolve: `gatsby-source-filesystem`,
options: {
name: `extra`,
path: `${__dirname}/src/extra`,
},
},
{
resolve: 'gatsby-plugin-copy-files-enhanced',
options: {
source: `${__dirname}/src/extra`,
destination: '/',
purge: false,
},
},
注意:不要忘记移动\u将文件重定向到src/extra
盖茨比,以便将文件逐字复制到生成目标。将其添加到生成后脚本中是可行的。一个注意事项是将postBuild
替换为onPostBuild
。例如,此处使用的: