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

109
Visualizações
¿Cómo cambio / muestro diferentes CSS mientras se llama / responde un servicio en Javascript AngularJS?

Estoy tratando de mostrar un estilo CSS diferente en mi FORMULARIO HTML antes de que mi código consulte un servicio y, en su respuesta, vuelva a cambiarlo. Estoy usando ng-class para agregar dinámicamente la clase siempre que el booleano activeload1 sea verdadero. Lamentablemente, esto nunca se refleja en mi HTML. Deliberadamente hice que la llamada de servicio llegara a una excepción para ver si el cambio de clase ocurre en ese momento y lo hace (simplemente se cuelga en el css de carga ya que nunca llega a la desactivación de clase debido a la excepción). ¿Cómo puedo reflejar el cambio/adición de la clase CSS en mi HTML? El código parece simplemente asignar el valor true al booleano activeload1 consultar el servicio y luego asignar false nuevamente sin reflejar nada. Mi código:

HTML:

 <div id="divPrincipal" class="wrapper" ng-class="{loading1:bravosCtrl.activeload1}"> </div>

Fragmento de función en JS. expediente:

 this.buscar = function(){ this.activeload1 = true; if (this.busqueda){ this.usuarioService.buscarUsuario(this.busqueda,this.userSession).then((usuariosE) => { console.log("SUCCESS"); }); this.activeload1=false; }else{ this.activeload1=false; this.searchError = true; } };

CSS:

 .wrapper { border-radius: 10px; background: #24CDD1; padding: 25px; max-width: 680px; margin: 0 auto; margin-bottom: 20px; box-shadow: 2px 8px 8px rgb(0 0 0 / 10%); position: relative; } .wrapper.loading1::before { content: ''; background: url('https://i.imgur.com/sdK5jNw.gif') no-repeat center center; width: 32px; height: 32px; display: inline-block; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); z-index: 9999; } .wrapper.loading1::after { content: ''; background: #24CDD1; display: inline-block; opacity: .65; position: absolute; width: 100%; height: 100%; top: 0; left: 0; z-index: 999; }
about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

la solicitud de servicio $http es asíncrona. Desde el código, está asignando activeload1 a falso inmediatamente sin esperar a que regrese la respuesta http.

Para establecer activeload1 en falso cuando el servicio $http responda, simplemente agréguelo a la función de devolución de llamada exitosa.

 this.usuarioService.buscarUsuario(this.busqueda,this.userSession).then((usuariosE) => { console.log("SUCCESS"); this.activeload1=false; // added here });
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