2016-10-07 5 views
3

저는 Angular 2를 처음 사용하고 커뮤니티에서 도움을 얻기를 희망했습니다. 현재 내 html보기의 <tr> 요소에 ngClass의 동적/조건부 구현을 구현하려고합니다. 사용 trufy는 변수이며 원래 값 내 Componenet에 설정된 JSON 객체에서 온다 :Angular 2 ngClass : html로 json을 표시하려고 할 때 expression이 예상되는 곳에 보간법 ({{}})을 얻습니다.

<td [ngClass] = "{weak : {{jsonInMyComponenet.element}}, neutral : !{{jsonInMyComponenet.element}}}" ></td> 

나는이 오류가 위에 내가 코드를 사용하는 경우 :

있어 보간 ({{}}) 표현식이 예상 된 곳

중괄호를 제거하면 오류가 발생하지만 페이지가 요소를 렌더링하지 않으므로 약하거나 중립적 인 클래스 구현을 볼 수 없습니다. 내가 뭘 잘못하고 있니?

답변

3

[...]{{...}}을 함께 사용하지 마십시오. 하나 또는 다른 것.

<td [ngClass] = "{'weak' : jsonInMyComponenet.element, 'neutral' : !jsonInMyComponenet.element}" ></td> 

{{...}}은 문자열 보간법입니다. [...]은 값을 표현식으로 해석합니다.

+1

Gunter 님, 고맙습니다. 그러나 클래스를 렌더링하지 않았습니다. 셀의 배경색이 빨간색이나 회색이거나 현재 흰색입니다. : 어쩌면 내 JSON 데이터가 잘못된 경우 나는 확실하지 않다 { "jsonInMyComponenet" "jsonInMyComponenet1"사실 : 거짓, "jsonInMyComponenet2"사실 } – eagleEye

+0

난 당신이를 둘 필요가 깜빡 속성 이름은 리터럴 이름 일 때 따옴표로 묶습니다. –

+0

이 경우, false로 평가해야하는 것은 어떨까요? '! jsonInMyComponenet.element'및! '! jsonInMyComponenet.element'를 시도했지만 렌더링하지 않습니다. ( – eagleEye