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

187
Visualizações
Ionic *ngIf - Comprueba las variables globales

¿Puede *ngIf solo verificar las variables locales de la página o puedo verificar las variables globales?

Quiero hacer lo siguiente:

inicio.pagina.html

 <div *ngIf="debugService.debugActive"></div>

depuración.servicio.ts

 debugActive: boolean = true; contructor() {} ...

Pero ahora mismo, primero tengo que inicializar la variable en mi home.page.ts para usarla en el html:

home.page.ts

 import { DebugService } from 'src/app/services/debug.service'; localDebugActive: boolean = false; constructor( private debugService: DebugService, ) {} ngOnInit() { this.localDebugActive = this.debugService.debugActive; }

inicio.pagina.html

 <div *ngIf="localDebugActive"></div>

Esto significa un paso extra y llenar mis páginas enteras con variables locales. ¿Es posible sin volver a declararlo y usarlo directamente en el HTML?

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

0

La única forma en que un componente obtiene acceso a un servicio es inyectándolo, asegurando que la inyección de dependencia funcione correctamente. Los servicios no son realmente variables globales , como usted dice: no son simplemente "accesibles desde cualquier lugar". Necesitas usar DI.

Técnicamente , puede inyectar un servicio como una variable public en lugar de private y acceder a sus miembros directamente desde la plantilla. Sin embargo, esto generalmente se considera olor a código.

about 4 years ago · Juan Pablo Isaza Relatório

0

Puede exponer el servicio inyectado como público:

 public debugService: DebugService

Y úsalo en tu plantilla. Aunque no me gusta mucho, pero para una visualización simple, eso sería suficiente.

about 4 years ago · Juan Pablo Isaza Relatório

0

Hay dos formas:

  1. Hacer pública una instancia de servicio

     constructor( public debugService: DebugService, ) {}
  2. Utilice un método (forma recomendada).

     public isDebugActive() { return this.debugService.debugActive; } <div *ngIf="isDebugActive()"></div>
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