2017-12-17 3 views
1
I는 다음과 같이 사용하는 문구라는 구성 요소,있어

:구성 요소의 사용자 지정 특성에 액세스하는 방법은 무엇입니까? (각도 5)

<phrase *ngFor="let phrase of phraseList.phrases" [attachedPhrase]="phrase"></phrase> 

이의 지금 가정 해 봅시다을, 내가 jQuery를 사용하여 이러한 문구의 구성 요소 중 하나 얻을. attachedPhrase에 액세스하려면 어떻게해야합니까?

+0

여기서 ngFor를 사용하고 있습니다. 내 질문은 당신이 단지 하나 또는 모든 것을 얻고 싶다면 무엇입니까? –

+0

이 요소에 속하는 특정 요소. –

+0

사용할 수있는 ViewChild, ElementRef 및 attr()이 있습니다. 좋은 대답을 제공하는 데 도움을 줄 수 있지만 명확한 유스 케이스를 제공 할 수 있습니까? –

답변

2

[attachedPhrase]은 (는) 속성이 아니라 property binding입니다. Angular 응용 프로그램에서만 사용할 수 있습니다.

ng-reflect-* attribute로 접근이 가능하다고하지만

이 (이 이러한 속성은 디버깅 모드에서만 사용할 수있는 이유입니다) 디버깅 목적으로 만 추천 할 수 있습니다.

phrase 문자열임을 감안 attachedPhrase 컴포넌트 입력 및 DOM 특성 등을 모두 사용할 수 있어야, 그것은 attribute binding 변경되어야 속성 대소 문자를 구분하기 때문에

<phrase *ngFor="let phrase of phraseList.phrases" attachedPhrase="{{ phrase }}"></phrase> 

, 그것은

컴파일 될
<phrase attachedphrase="..."></phrase> 

속성 및 속성 바인딩은 표현식이 문자열로 보간 될 것으로 예상되는 경우에만 상호 교환 할 수 있습니다.

가능하면

, 그것은 DOM 선택기에 의존 DOM 요소 ( ViewChild 또는 ElementRef 요소 참조 nativeElement 속성)에 실제 참조 $(...)를 제공하지하는 것이 바람직합니다.

+0

구문은 문자열이 아닙니다. 그것은 하나의 대상입니다. 여전히 작동할까요? –

+0

DOM 속성은 객체가 될 수 없으며 문자열입니다. 구성 요소를 jQuery와 통합하는 방법을 재고해야합니다. – estus

0

시도해 볼 수 있습니다 : [attr.attachedPhrase]="'phase'".

자세한 내용은 Angular 5 지침에 대한 this site을 참조하십시오.

관련 문제