Вы жестко запрограммировали id
в дочернем компоненте, когда вы используете его несколько раз, один и тот же идентификатор будет повторяться, и это является причиной проблемы.
Вам необходимо передать идентификатор в качестве ввода.
в child.component.ts
добавьте Id
в массив inputs
:
inputs: ['textOne', 'textTwo', 'checkedValue', 'isDisabled', 'Id'],
и определите Id
Id: string;
In в child.component.html
, привяжите идентификатор к Id
<input type="checkbox" [id]="Id" [disabled]="isDisabled">
<label class="toggle-button-switch" [for]="Id" (click)="toggleCheck()"></label>
<div class="toggle-button-text">
<div class="toggle-button-text-on">{{textOne}}</div>
<div class="toggle-button-text-off">{{textTwo}}</div>
</div>
и передайте идентификатор из parent.component.html
<app-child
name="one"
id="one"
textOne="Yes"
[Id]="'first'"
textTwo="No"
[checkedValue]="test1"
(checkToEmit)="test1Checked($event)"
>
</app-child>
<app-child
name="two"
id="two"
textOne="Yes"
[Id]="'second'"
textTwo="No"
[checkedValue]="test2"
(checkToEmit)="test2Checked($event)"
>
</app-child>