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

251
Visualizações
Mostrando Hubo un problema con la impresión de la página en los navegadores móviles, window.print usando reactjs no es compatible con los navegadores móviles

La vista previa de impresión se abre en el navegador Chrome de escritorio, pero no se abre en los navegadores móviles. Está mostrando que hubo un problema con la impresión de la página. Si uso este código, no funciona en los navegadores móviles, muestra que hubo un problema con la impresión de la página. pero está funcionando en el escritorio

 print() { var print = window.open("", "", "left=0,top=0,width=800,height=500, scrollbars=1"); var pcontents= this.state.print; // In this.state.print am getting response from api with html tags like header and paragraph tags print.focus(); print.document.write(pcontents); print.document.close(); print.print(); print.close(); }
about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Agregue una función de tiempo de espera a su print.close() , para permitir que el servicio de impresión en su dispositivo móvil obtenga los datos antes de que se cierre la página.

Debería verse algo como esto:

 print.print(); setTimeout(function (){ print.close(); }, 2000);

2000 es el tiempo en milisegundos para el retraso. Si su servicio de impresión es lento, esto tampoco funcionará.

Lo que puede hacer es llamar a su print.close() manualmente después de que se realiza la impresión llamándolo después de un evento. Por ejemplo, un deslizamiento para que no haya un botón en su ventana que también se imprima.

Esta es una función de detección de deslizamiento.

 document.addEventListener('touchstart', handleTouchStart, false); document.addEventListener('touchmove', handleTouchMove, false); var xDown = null; var yDown = null; function getTouches(evt) { return evt.touches || // browser API evt.originalEvent.touches; // jQuery } function handleTouchStart(evt) { const firstTouch = getTouches(evt)[0]; xDown = firstTouch.clientX; yDown = firstTouch.clientY; }; function handleTouchMove(evt) { if ( ! xDown || ! yDown ) { return; } var xUp = evt.touches[0].clientX; var yUp = evt.touches[0].clientY; var xDiff = xDown - xUp; var yDiff = yDown - yUp; if ( Math.abs( xDiff ) > Math.abs( yDiff ) ) {/*most significant*/ if ( xDiff > 0 ) { /* right swipe */ } else { /* left swipe */ } } else { if ( yDiff > 0 ) { /* down swipe */ } else { /* up swipe */ } } /* reset values */ xDown = null; yDown = null; };
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