Я бы просто использовал привязку стиля, чтобы связать любой стиль, который вы хотите, с родительским div, а затем использовал дочерние щелчки div, чтобы изменить значение строки, связанной с этим стилем.
<div class="tableRow" [style.background]="myStyle">
<div id="0-0">
<p>Point {{levelOne}}</p>
</div>
<div id="0-1" (click)="myStyle = 'red'">
<li>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod </li>
</div>
<div id="0-2" (click)="myStyle = 'blue'">
<li >Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod. </li>
</div>
<div id="0-3" (click)="myStyle = 'green'">
<li>
Lorem ipsum dolor sit amet,
</li>
</div>
<div id="0-4" (click)="myStyle = 'orange'">
<li>Lorem ipsum dolor sit amet, consectetur adipiscing</li>
<li>lorem ipsum dolor</li>
</div>
<div id="0-5" (click)="myStyle = 'magenta'">
<li>Lorem ipsum dolor sit amet, consectetur adipiscing</li>
</div>
</div>
Компонент
import { Component, OnInit } from "@angular/core";
@Component({
selector: "example",
templateUrl: "./example.component.html"
})
export class Example implements OnInit {
public levelOne: Number = 1;
public levelTwo: Number = 3;
public levelThree: Number = 9;
public LevelFour: Number = 27;
myStyle = 'inherit';
public selected = false;
constructor() {}
ngOnInit() {}
В качестве альтернативы, если вы хотите уменьшить количество прослушивателей событий, которые вы добавляете на свою страницу, вы можете просто установить один прослушиватель событий в родительском div и использовать идентификаторы $ event.target для проверки целевого дочернего div, и установить строку на основе этой цели.
<div class="tableRow" [style.background]="myStyle" (click)="setStyle($event)">
Затем просто добавьте func в ваш компонент, аналогичный тому, который у вас уже есть
select($event) {
let id = ($event.target as HTMLElement).id;
// here you could add a a switch case that sets the myStyle string based on the id of the clicked element