Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

183
Visualizações
GatsbyJS: etiqueta img relativa src que apunta a un directorio/fuente específico

Estoy tratando de crear un sitio estático con GatsbyJS y necesito resolver las etiquetas img para que las URL relativas apunten a un directorio determinado, mientras que las absolutas (que comienzan con http(s):// funcionan normalmente).
Intenté crear un componente adecuado, pero como no es una página , Graphql no se ejecutará:

 import React from "react" import { graphql } from "gatsby" // Component constants const absUrlRex = new RegExp(/^https?:\/\//, "i") // Component const CustomImg = ({ src, data, ...props }) => { let imgSrc = src if (!absUrlRex.test(src)) { if (null !== data.file) { imgSrc = data.file.publicURL } else { console.log(`Image "${src}" NOT found!`) } } return <img src={imgSrc} {...props} /> } export default React.memo( CustomImg, (prev, next) => next.src === prev.src ) export const query = graphql` query($src: String!) { file ( sourceInstanceName: {eq: "images"}, relativePath: {eq: $src} ) { publicURL } } `

Ya probé StaticImage de " gatsby-plugin-image ", pero el parámetro src no es una cadena estática, por lo que no funciona.

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Está ejecutando una consulta de página en un componente. Eso nunca funcionará porque las consultas de página solo funcionan en componentes de nivel superior (páginas), de ahí el nombre.

Debido a que está utilizando un parámetro de filtro GraphQL dinámico ( $src: String! ), usar una consulta estática no es una opción (no aceptan parámetros dinámicos, de ahí el nombre), por lo que su única posibilidad es mover la consulta a un componente de página y desglose el file en el componente como accesorio.

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda