typescript - Angular 5 Verificando o valor de uma variável em uma declaração *ngIf
Estou usando Angular 5 e estou tentando verificar o valor de uma variável no template HTML do componente.
Então fica mais ou menos assim:
<div *ngIf="item='somevalue'">
Estou recebendo este erro:
Erro ht: Erros de análise do template:
Parser Error: Bindings cannot contain assignments at column 17 in...
Isso não pode ser feito em Angular?
Resposta #1
*ngIf funciona assim *ngIf="expressão" onde a expressão é substituída por uma instrução simples de Javascript que retorna boolean. Mas você usa um = e isso significa que você está atribuindo o someValue à propriedade item e se o valor não for falsy, ele retornará true.
No seu caso, você precisa escrever *ngIf="item === 'somevalue'".
Resposta #2
Você está fazendo uma atribuição em vez de uma comparação
<div *ngIf="item==='somevalue'">
Resposta #3
Você está fazendo um trabalho usando o operador=único.
Use o operador de dois iguais == para verificar igualdade ou, melhor, use === para verificar igualdade estrita.
<div *ngIf="item === 'somevalue'">
