2017-10-21 9 views
1

내가 요청 이전에이 같이 있습니다 reactjs 요청에서 조건을 구현하는 방법은 무엇입니까?

let data = { 

     chartLibraryType : this.state.chartCategory == 'highChart'? "HIGH_CHARTS" : "C3", 

    }; 

지금 나는 또한 D3를 통과해야 highcharts과 C3와 함께 3으로 구현해야합니다.

let data = { 

     chartLibraryType : if(this.state.chartCategory == 'highChart'){ 
          "HIGH_CHARTS" 
         }else if(this.state.chartCategory == 'c3Chart'){ 
          "C3" 
         }else if(this.state.chartCategory == 'D3Chart'){ 
          "D3" 
          }, 

    }; 

우리가 2 개 이상일 때 구현하는 방법입니까?

답변

4

우선 dictionary을 만들 수 있습니다.

let dictionary={ 
    "highChart" : "HIGH_CHARTS", 
    "c3Chart" : "C3", 
    "D3Chart" : "D3" 
} 

은 그럼 당신은 bracket 표기법을 사용하여 사전의 핵심으로 상태을 통과해야합니다.

let data = { 
    chartLibraryType : dictionary[this.state.chartCategory] 
} 
+1

감사를 살펴보고 여러분을 초대합니다 –

0

당신은시 같은 스위치를 사용할 수 있습니다

let data = { chartLibraryType: '' } 

switch (this.state.chartCategory) { 
    case 'highChart': 
    data.chartLibraryType = 'HIGH_CHARTS' 
    break 
    case 'c3Chart': 
    data.chartLibraryType = 'C3' 
    break 
    case 'D3Chart': 
    data.chartLibraryType = 'D3' 
    break 
    // Add as much `case` as you wish without forgetting the break clause 
    // If you'd like to fallback to a default value 
    default: 
    break 
} 

나는 또한 책의 훌륭한 컬렉션에 신속한 대응을위한 "You don't know JS"