2017-03-27 9 views
0

저는 Dijit Tree를 사용하고 있으며 item 속성을 기반으로 노드의 CSS 스타일을 변경해야합니다.아직 디스플레이 노드가 될 CSS 클래스를 설정하는 방법은 무엇입니까?

var node = this.tree.getNodesByItem(item); 
if (node[0]) { 
    domClass.toggle(node[0].domNode, className, add); 
} 

노드가 표시되고 있는지 알 수있는 이벤트가인가/생성 된 다음 노드 (즉, 노드가 정의되지 않는다)이 아직 표시되지 않았 으면

다음 코드 실패? node 아직 표시하지 않을 경우 undefined입니다

+0

확인 node'이 아닌 최초의'것을 정의되지 않았습니까? – evolutionxbox

답변

0

경우, 그 변수는 falsy해야하며, 따라서 귀하의 if -statement 내에서 간단한 논리 AND (&&) 가드는 충분합니다 :

var node = this.tree.getNodesByItem(item); 
if (node && node[0]) { 
    domClass.toggle(node[0].domNode, className, add); 
} 
+0

내가 의도 한 바는'domClass.toggle (node ​​[0] .domNode, className, add)를 호출 할 수 있도록 노드가 표시되었다는 알림을 어떻게 얻을 수 있었는지였습니다. ' – chOof

+0

'Tree.getLabelClass (item) 직업' – chOof