Saltar al contenido

Cómo usar mouseover y mouseout en Angular 6

Solución:

El código equivalente de Angular6 debería ser:

app.component.html

<div (mouseover)="changeText=true" (mouseout)="changeText=false">
  <span *ngIf="!changeText">Hide</span>
  <span *ngIf="changeText">Show</span>
</div>

app.component.ts

@Component({
   selector: 'app-main',
   templateUrl: './app.component.html'
})
export class AppComponent {
    changeText: boolean;
    constructor() {
       this.changeText = false;
    }
}

Note que no existe tal cosa como $scope ya que existía en AngularJS. Ha sido reemplazado con variables miembro de la clase de componente. Además, tampoco existe un algoritmo de resolución de alcance basado en la herencia prototípica: se resuelve en un miembro de la clase de componente o no.

Agregando a lo que ya se dijo.

si quieres *ngFor un elemento, y ocultar mostrar elementos en él, al pasar el mouse, como agregaste en los comentarios, deberías reconsiderar todo el concepto.

una forma más apropiada de hacerlo, no implica angular en absoluto. En su lugar, optaría por CSS puro, usando su nativo :hover propiedad.

algo como:

App.Component.css

div span.only-show-on-hover {
    visibility: hidden;
}
div:hover span.only-show-on-hover  {
    visibility: visible;
}

App.Component.html

  <div *ngFor="let i of [1,2,3,4]" > hover me please.
    <span class="only-show-on-hover">you only see me when hovering</span>
  </div>

agregó una demostración: https://stackblitz.com/edit/hello-angular-6-hvgx7n?file=src%2Fapp%2Fapp.component.html

To avoid blinking problem use following code
its not mouseover and mouseout instead of that use mouseenter and mouseleave


**app.component.html**

    <div (mouseenter)="changeText=true" (mouseleave)="changeText=false">
      <span *ngIf="!changeText">Hide</span>
      <span *ngIf="changeText">Show</span>
    </div>

**app.component.ts**

@Component({
   selector: 'app-main',
   templateUrl: './app.component.html'
})
export class AppComponent {
    changeText: boolean;
    constructor() {
       this.changeText = false;
    }
}
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)


Tags : /

Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *