Есть ли шанс изменить значение ngModel при нажатии на тег <a>из тегов loop <a> - PullRequest
0 голосов
/ 30 января 2019
  • Привет всем
  • я использую угловой 6 и я новичок в этом

  • я попытался изменить значение в теге привязки ngModel valueв цикле несколько тегов (это теги, созданные с использованием * ngFor).

  • Мой HTML-код
<a class="layerCss" [(ngModel)] = "clickStatus" [(ngModel)] = "layerStatus" (click)="layersClicks($event)" id="layerTwo">LayerOne</a>

<a class="layerCss" [(ngModel)] = "clickStatus" [(ngModel)] = "layerStatus" (click)="layersClicks($event)" id="layerOne">LayerTwo</a>

- Код моего компонента

@Input() clickStatus: string = 'inactive';
@Input() layerStatus: string = 'offline';
layersClicks(event) {
console.log('content ', (content.target as Element).id);
if(clickStatus === 'inactive') {
....some logic
// here need layerStatus also
this.clickStatus = 'active'
}else {
...some logic
//here need layerStatus also
this.clickStatus = 'inactive'
}
}
  • при нажатии на LayerOne, а затем LayerOne и LayerTwo оба тега clickStatus меняются с неактивного на активное.
  • , но нужно только, когда щелкните по тегу события, затем измените значение clickStatus, theat clicked tag value
  • заранее спасибо.

1 Ответ

0 голосов
/ 31 января 2019

Я думаю, вы неправильно поняли, как работает [(ngModel)].

[(ngModel)] не будет работать на <a>, поскольку не имеет очевидного значения.Я думаю, что вы можете использовать для изменения значения внутри тега <a> интерполяцию ({{}}).

Если вы не спросите больше о пользовательских атрибутах внутри тега <a>, например: <a active>?

...