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

190
Visualizações
Vue muestra una imagen del blob de almacenamiento en la nube de firebase

Estoy creando un repositorio de búsqueda de productos, los usuarios escanearán un código de barras del producto que luego devolverá datos sobre el producto y una imagen del producto que se mostrará.

En este momento, con fines de prueba, configuré un depósito de almacenamiento de Firebase, con una imagen cargada. He podido recuperar la imagen con éxito llamando a la API de almacenamiento de Firebase, pero parece que no puedo mostrarla en mi aplicación Vue. Parece que no puedo encontrar la documentación adecuada para esto en los documentos de firebase, ya que su ejemplo usa js simple y html.

Mi código para mostrar la imagen:

 <template> <div class="container"> <div class="row"> <div class="col"> <image v-if="image!==null" :src="image"></image> </div> </div> </div> </template>

El script que se ejecuta cuando se monta la página y obtendrá la imagen del depósito de almacenamiento y la mostrará.

 <script> import firebase from "firebase"; export default { name: "ProductPage", data: () => { return { image: null }; }, mounted() { firebase .storage() .ref("test/1234-1.jpg") .getDownloadURL() .then(url => { const xhr = new XMLHttpRequest(); xhr.responseType = "blob"; xhr.onload = event => { this.image = xhr.response; event.preventDefault(); }; xhr.open("GET", url); xhr.send(); }) .catch(error => { // Handle any errors console.log(error); }); } }; </script>

Sé que la llamada a la API funciona porque cuando consulto la consola del desarrollador en Chrome, puedo ver la imagen en vista previa en la llamada a la API en la pestaña de redes. Parece que no puedo mostrarlo en vue.

¿Almacena la imagen como blob?

ingrese la descripción de la imagen aquí

He agregado las respuestas según lo solicitado: ingrese la descripción de la imagen aquí

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

0

El problema podría ser que Vue muestre Blob. Probar:

 xhr.onload = event => { this.image = URL.createObjectURL(xhr.response); event.preventDefault(); };

Aquí, URL.createObjectURL debería crear una referencia al Blob.

about 4 years ago · Juan Pablo Isaza Relatório

0

El problema no radica en el blob, sino en la etiqueta vue para mostrar la imagen. En lugar de <image> usamos <img> así:

 <img v-if="image !== null" :src="image" class="img-circle" alt="Services">
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