【发布时间】:2020-06-09 12:59:40
【问题描述】:
我正在尝试将 ai2html 合并到 Gatsby 构建的存储库中。我很快意识到我不能简单地使用gatsby-image,因为我没有将所有东西都部署到一个地方:我的代码通过public/index.html 转到一个地方,我的图像位于AWS S3 中。我正在寻找一种通过 URL 将图像提取到我的src/index.js 的方法,最好采用分步教程的方式,因为我是 Gatsby 的新手。
到目前为止,我已经尝试使用gatsby-source-s3(文档here),但我不确定我是否在我的index.js 中正确设置了它(我已经安装了它并放置了相关信息在gatsby-config.js:
import React from "react"
import { useStaticQuery, graphql } from "gatsby"
import "../styles/ai_styles.css"
export default () => {
const data = useStaticQuery(graphql`
query IndexQuery {
images: allS3Images {
edges {
node {
Key
Url
}
}
}
}
`)
return (
<div>
<div id="g-crime-box" className="ai2html ai2html-box-v5">
<div id="g-mobile" className="g-artboard" style={{width: '280px', height: '2328.3424680476px'}} data-aspect-ratio="0.12" data-min-width="280" data-max-width="579">
<Img fluid={data.images.node.Url} alt="alt desktop image" />
...
</div>
我的主要问题是,{data.images.node.Url} 是调用图像的最佳方式还是我做错了?这是最好的方法吗?有没有人看到其他方法来做到这一点?
【问题讨论】:
标签: reactjs amazon-s3 gatsby gatsby-image