使用 gatsbyjs 在降价中渲染图像时出现问题
Trouble rendering images in markdown with gatsbyjs
我正在使用以下 GatsbyJS 启动器:https://www.gatsbyjs.com/starters/jannikbuschke/gatsby-antd-docs/
我正在尝试在降价文件中渲染图像,如下所示:
![US Energy Infrastructure Visualization](/src/images/us-viz.png)
降价文件位于contents/docs/templates/use-cases/us-energy-infrastructure.md
图像位于src/images/us-viz.png
结果如下:
控制台和网络选项卡显示请求的图像文件出现 404 错误:
这是我的 gatsby-config.js
文件的内容:
module.exports = {
siteMetadata: {
title: 'Energy Infrastructure API Documentation',
},
plugins: [
`gatsby-plugin-typescript`,
`gatsby-plugin-react-helmet`,
{
resolve: `gatsby-source-filesystem`,
options: {
name: `images`,
path: `${__dirname}/src/images`,
},
},
`gatsby-transformer-json`,
{
resolve: `gatsby-source-filesystem`,
options: {
name: `menuItems`,
path: `${__dirname}/src/menuItems`,
},
},
{
resolve: `gatsby-source-filesystem`,
options: {
name: `sidebar`,
path: `${__dirname}/src/sidebar`,
},
},
{
resolve: `gatsby-source-filesystem`,
options: {
name: `contents`,
path: `${__dirname}/contents`,
},
},
`gatsby-plugin-image`,
`gatsby-transformer-sharp`,
`gatsby-plugin-sharp`,
{
resolve: `gatsby-plugin-manifest`,
options: {
name: 'gatsby-starter-markdown',
short_name: 'starter',
start_url: '/',
background_color: '#663399',
theme_color: '#663399',
display: 'minimal-ui',
icon: 'src/images/gatsby-icon.png', // This path is relative to the root of the site.
},
},
{
resolve: `gatsby-transformer-remark`,
options: {
plugins: [`gatsby-remark-images`],
},
},
{
resolve: `gatsby-plugin-mdx`,
options: {
defaultLayouts: {
default: require.resolve('./src/Layout.tsx'),
},
extensions: ['.mdx', '.md'],
// workaround: https://github.com/gatsbyjs/gatsby/issues/16422#issuecomment-518985316
plugins: [`gatsby-remark-autolink-headers`],
gatsbyRemarkPlugins: [
`gatsby-remark-katex`,
{
resolve: `gatsby-remark-images`,
options: {
maxWidth: 1035,
},
},
`gatsby-remark-autolink-headers`,
{
resolve: `gatsby-remark-prismjs`,
options: {
classPrefix: 'language-',
inlineCodeMarker: null,
showLineNumbers: true,
noInlineHighlight: false,
},
},
],
},
},
`gatsby-plugin-remove-trailing-slashes`,
// this (optional) plugin enables Progressive Web App + Offline functionality
// To learn more, visit: https://gatsby.app/offline
// 'gatsby-plugin-offline',
],
/// this must match the path your webpage is displayed from (the second part of the ternary will be the path prefix for production)
pathPrefix: process.env.NODE_ENV === 'development' ? '' : '',
}
它似乎满足 Gatsby docs
中指定的使用 Transformer Remark 插件的必要要求
据我所知,我用来将图像插入 markdown 文件的方法应该可行,但我不确定这里发生了什么。非常感谢任何建议!
来自 gatsby-remark-images 插件文档:
You can reference an image in markdown using the relative path, where that path is relative to the location of the Markdown file you’re typing in.
gatsby-remark-images documentation
所以如果你的降价路径是:
contents/docs/template/use-cases/us-energy-infrastructure.md
而你的图片位置是:
src/images/us-viz.png
您应该像这样从 markdown 引用您的图像文件:
![Alt text here](../../../../src/images/us-viz.png)
我正在使用以下 GatsbyJS 启动器:https://www.gatsbyjs.com/starters/jannikbuschke/gatsby-antd-docs/
我正在尝试在降价文件中渲染图像,如下所示:
![US Energy Infrastructure Visualization](/src/images/us-viz.png)
降价文件位于contents/docs/templates/use-cases/us-energy-infrastructure.md
图像位于src/images/us-viz.png
结果如下:
控制台和网络选项卡显示请求的图像文件出现 404 错误:
这是我的 gatsby-config.js
文件的内容:
module.exports = {
siteMetadata: {
title: 'Energy Infrastructure API Documentation',
},
plugins: [
`gatsby-plugin-typescript`,
`gatsby-plugin-react-helmet`,
{
resolve: `gatsby-source-filesystem`,
options: {
name: `images`,
path: `${__dirname}/src/images`,
},
},
`gatsby-transformer-json`,
{
resolve: `gatsby-source-filesystem`,
options: {
name: `menuItems`,
path: `${__dirname}/src/menuItems`,
},
},
{
resolve: `gatsby-source-filesystem`,
options: {
name: `sidebar`,
path: `${__dirname}/src/sidebar`,
},
},
{
resolve: `gatsby-source-filesystem`,
options: {
name: `contents`,
path: `${__dirname}/contents`,
},
},
`gatsby-plugin-image`,
`gatsby-transformer-sharp`,
`gatsby-plugin-sharp`,
{
resolve: `gatsby-plugin-manifest`,
options: {
name: 'gatsby-starter-markdown',
short_name: 'starter',
start_url: '/',
background_color: '#663399',
theme_color: '#663399',
display: 'minimal-ui',
icon: 'src/images/gatsby-icon.png', // This path is relative to the root of the site.
},
},
{
resolve: `gatsby-transformer-remark`,
options: {
plugins: [`gatsby-remark-images`],
},
},
{
resolve: `gatsby-plugin-mdx`,
options: {
defaultLayouts: {
default: require.resolve('./src/Layout.tsx'),
},
extensions: ['.mdx', '.md'],
// workaround: https://github.com/gatsbyjs/gatsby/issues/16422#issuecomment-518985316
plugins: [`gatsby-remark-autolink-headers`],
gatsbyRemarkPlugins: [
`gatsby-remark-katex`,
{
resolve: `gatsby-remark-images`,
options: {
maxWidth: 1035,
},
},
`gatsby-remark-autolink-headers`,
{
resolve: `gatsby-remark-prismjs`,
options: {
classPrefix: 'language-',
inlineCodeMarker: null,
showLineNumbers: true,
noInlineHighlight: false,
},
},
],
},
},
`gatsby-plugin-remove-trailing-slashes`,
// this (optional) plugin enables Progressive Web App + Offline functionality
// To learn more, visit: https://gatsby.app/offline
// 'gatsby-plugin-offline',
],
/// this must match the path your webpage is displayed from (the second part of the ternary will be the path prefix for production)
pathPrefix: process.env.NODE_ENV === 'development' ? '' : '',
}
它似乎满足 Gatsby docs
中指定的使用 Transformer Remark 插件的必要要求据我所知,我用来将图像插入 markdown 文件的方法应该可行,但我不确定这里发生了什么。非常感谢任何建议!
来自 gatsby-remark-images 插件文档:
You can reference an image in markdown using the relative path, where that path is relative to the location of the Markdown file you’re typing in.
gatsby-remark-images documentation
所以如果你的降价路径是:
contents/docs/template/use-cases/us-energy-infrastructure.md
而你的图片位置是:
src/images/us-viz.png
您应该像这样从 markdown 引用您的图像文件:
![Alt text here](../../../../src/images/us-viz.png)