Angular ngIf, değişkenin html [duplicate] bileşeninde belirtilen bir karakterle başlayıp başlamadığını kontrol edin

Aug 17 2020

Şu anda buna sahibim:

<div *ngIf="name !== '@name1'>
  Show something
</div>

Ancak, var name değerinin belirli bir karakterle başlayıp başlamadığını kontrol etmek için değiştirmek istiyorum, örneğin @.

Bunu nasıl yapabilirim?

Yanıtlar

1 Alexis Aug 17 2020 at 16:57

Bunun gibi bir yöntemle beginWith kullanın

<div *ngIf="name.startsWith('@')">
  Show something
</div>

Ve dizenin '@' ile başlamayıp başlamadığını kontrol etmek istiyorsanız, sadece 'ekleyin!' sevmek*ngIf="!name.startsWith('@')"

1 VivekJain Aug 17 2020 at 17:08

indexOfKarakterinizin başlangıç ​​indeksini almak için yöntemi kullanabilirsiniz ve eğer 0 ise bu, doğru olduğu anlamına gelir.

Aşağıdaki gibi.

<div *ngIf="name.indexOf('@name1') === 0">
   it's start with @name1
</div>

<div *ngIf="name.indexOf('@name1') !== 0">
  it's not start with @name1
</div>
1 yanesof__ Aug 17 2020 at 19:06

bu kodu Bileşenin içine ekleyebilirsiniz:

export class NameComponent implements OnInit {

public isNameContainAt = false;
public name = 'name';
constructor() { }

ngOnInit() {
if (this.name.startsWith('@') == true) {
  this.isNameContainAt = true;
}

}

}

Ve sonra şablonda:

<div *ngIf="!isNameContainAt">

Birşeyler göster