2
ElementRef을 사용하는 방법을 이해하고 요소 ID를 설정하는 것을 피해야하지만 요소의 id 속성을 설정하려는 상황이 여전히 있습니다. 입력과 레이블템플릿에 사용할 수있는 구성 요소 인스턴스 네임 스페이스/아이디가 있습니까?
예를 들어(수 있기 때문에 제 3 자 CSS의하지 둥지) :
<input [attr.id]="'myinput'+instanceId" />
<label = [attr.for]="'myinput'+instanceId">My Label</label>
난 그냥 단순이 같은 수를 증가했습니다 :
let numInstances = 0;
@Component({
})
export class MyComponent {
private instanceId: number;
constructor(){
this.instanceId = numInstances++;
}
}
하지만를 대신에 템플릿에서 사용할 수있는 구성 요소 인스턴스 네임 스페이스가 있는지 궁금합니다. 이 같은? Angular2는 #을 component 인스턴스의 고유 문자열로 대체합니다.
<input [attr.id]="#myinput" />
<label = [attr.for]="#myinput">My Label</label>
이것이 없으면 Angular2 팀에 기능 요청을해야한다고 생각합니까?
당신은 구성 요소 이름을 찾고 있습니까 ??? 코드에서 구성 요소 이름을 가져 오시겠습니까? – micronyks
@micronyks 아니요, Component 인스턴스에 고유 한 식별자입니다. 나는 문자가 HTML id 속성에 대해 유효한 한 그것이 어떻게 생겼는지 상관하지 않는다. – Arlo
안녕하세요,이 해결책을 찾았습니까? –