Angular를 사용하여 데이터 속성을 작성하는 방법


229

data attribute내에서 를 사용하려고 template하면 다음과 같이하십시오.

<ol class="viewer-nav">
    <li *ngFor="#section of sections" data-value="{{ section.value }}">
        {{ section.text }}
    </li>
</ol>

Angular 2 충돌 :

예외 : 템플릿 구문 분석 오류 : 'sectionvalue'에 알려진 기본 속성이 아니기 때문에 'sectionvalue'에 바인딩 할 수 없습니다 ( "

] data-sectionvalue = "{{section.value}}"> {{section.text}}

구문에 문제가있는 것 같습니다. 도와주세요.

답변:


471

대신 속성 바인딩 구문을 사용하십시오.

<ol class="viewer-nav"><li *ngFor="let section of sections" 
    [attr.data-sectionvalue]="section.value">{{ section.text }}</li>  
</ol>

또는

<ol class="viewer-nav"><li *ngFor="let section of sections" 
    attr.data-sectionvalue="{{section.value}}">{{ section.text }}</li>  
</ol>

또한보십시오 :


20
data 속성의 값에 어떻게 액세스합니까?
Sean W

4
달성하려는 것을 보여주는 코드로 새 질문을 작성하십시오.
Günter Zöchbauer 오전

10
이것은 '' 쿼리 의 알려진 속성이 아니기 때문에 ''에 바인딩 할 수 없음 ''에 대한 Google의 # 1 답변이어야합니다 . 이 의견은 조금 도움이 될 수 있습니다 ...
netzaffin

1
@netzaffin 이것은 유용한 답변이지만 여러 번 오류를 바인딩 할 수 없으며 실제로 이것이 실제 문제 / 해결책이었습니다.
스택 언더

32

액세스에 대해

<ol class="viewer-nav">
    <li *ngFor="let section of sections" 
        [attr.data-sectionvalue]="section.value"
        (click)="get_data($event)">
        {{ section.text }}
    </li>  
</ol>

get_data(event) {
   console.log(event.target.dataset.sectionvalue)
}
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.