2017-05-16 4 views
1

Material UI 드롭 다운 구성 요소와 레이블이 있습니다. 레이블을 클릭하여이 드롭 다운을 여는 방법은 무엇입니까?클릭시 React MaterialUI 드롭 다운을 여는 방법은 무엇입니까?

<label>Dash style</label> 
<DropDownMenu 
    value={this.props.seriesOptions.dashStyle} 
    onChange={this.handleDashChange} > 
    <MenuItem key={1} value={"Solid"} label="Solid" primaryText="Solid" /> 
    <MenuItem key={2} value={"ShortDash"} label="ShortDash" primaryText="ShortDash" /> 
    <MenuItem key={3} value={"ShortDot"} label="ShortDot" primaryText="ShortDot" /> 
</DropDownMenu> 
+0

기본 동작에 대해 이야기하고 있습니다. ['react-tap-event-plugin'] (http://www.material-ui.com/#/get-started/installation)을 가져 왔습니까? –

+0

@LeeHanKyeol, 아니, 어떻게 도와 줄 수 있니? 라벨에 추가해야하는 onClick 속성이 있습니까? – kakaja

답변

2

아시다시피, DropDownMenu 구성 요소에는 사용자가 자신의 상태를 제어 할 수있는 속성이 없습니다. 그러나 이것을 수행하려면 PopoverMenu 구성 요소와 함께 사용할 수 있습니다.

이러한 두 가지 구성 요소와

 <label onClick={(event) => { 
      this.setState({ 
      open: true, 
      anchorEl: event.currentTarget, 
      }); 
     }}>Dash style</label> 
     <Popover 
      open={this.state.open} 
      anchorEl={this.state.anchorEl} 
      anchorOrigin={{horizontal: 'left', vertical: 'bottom'}} 
      targetOrigin={{horizontal: 'left', vertical: 'top'}} 
      onRequestClose={this.handleRequestClose} 
      animation={PopoverAnimationVertical} 
     > 
      <Menu 
      value={this.state.dashStyle} 
      onChange={this.handleDashChange.bind(this)} 
      > 
      <MenuItem key={1} value="Solid" primaryText="Solid"/> 
      <MenuItem key={2} value="ShortDash" primaryText="ShortDash"/> 
      <MenuItem key={3} value="ShortDot" primaryText="ShortDot"/> 
      </Menu> 
     </Popover> 

같은 것을 쓸 수 있습니다.

희망 도움말.

+0

고맙습니다. 나는 이제 다른 해결 방법을 사용했다. 즉, 사용자가 레이블을 클릭 할 수있는 인상을 갖도록 실제로는 그것이 눌려진 드롭 다운 자체가되도록, 패딩이 레이블 위에 놓이는 절대적으로 위치 된 드롭 다운을 사용했다. – kakaja

관련 문제