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

142
Visualizações
La aplicación angular se comporta de manera diferente en el servidor web a Localhost

Estoy creando un sitio web que simplemente convierte una base de 1 número a otro número, y mostrará una tabla que muestra todos los valores numéricos. A veces, la tabla es demasiado grande y cambio la propiedad de zoom para que quepa.

Así es como debería verse (localhost):

ingrese la descripción de la imagen aquí

Así es como se ve en el servidor web (el zoom no funciona):

ingrese la descripción de la imagen aquí

Aquí está el sitio web del servidor web si desea probarlo usted mismo

Aquí está el código para obtener el zoom (se ejecuta cuando el usuario hace clic en el botón de conversión):

 const numberGridFlexboxWidth = document.getElementById('numberGridFlexbox')!.clientWidth; const screenWidth = window.innerWidth; var zoom = screenWidth / numberGridFlexboxWidth * 100; if (zoom < 100) { zoom = zoom - (zoom * 0.05) }//subtract 5% to account for the padding and margins else { zoom = 100; } //zoom never goes higher than 100 if (zoom < 50) { zoom = 50; } //zoom never goes lower than 50% this.dataservice.zoom = Math.round(zoom);

Escribe el nivel de zoom en una variable en un servicio de datos, y aquí está el código que vincula el zoom a la propiedad css (app.component.html):

 <!-- Shell Page --> <div class="container" [ngStyle]="{'zoom': dataservice.zoom + '%'}"> <div style="width: 100%; text-align: center;"><h1><u>Base Converter</u></h1></div> <app-header></app-header> <app-main></app-main> </div>

El problema radica en la línea: this.dataservice.zoom = Math.round(zoom);

El zoom funciona si asigno this.dataservice.zoom a un valor real, por ejemplo, si escribo this.dataservice.zoom = 50 , entonces funciona en el servidor web, pero también verifiqué la variable de zoom local y es el valor correcto, así que realmente no sé cuál es el problema.

Editar: descubrí que si hace clic en el botón de conversión dos veces en el servidor web, se ampliará correctamente, por lo que tal vez sea un problema de no enlazar correctamente la primera vez. ¿Hay alguna diferencia en cómo funciona el enlace en localhost en comparación con un servidor web?

Resuelto: la función se estaba ejecutando antes de que se cargara la tabla, así que la moví para que se ejecutara después de que se cargara y resuelve el problema.

about 4 years ago · Juan Pablo Isaza
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