2017-11-06 7 views
1

OnChange 체크 상자 이벤트에 함수를 연결하려고합니다. 내가받은 doClick 함수가 함수가 아니라는 오류 메시지가 나타납니다. 나는 여기에 완전히 갇혀있다. 내 코드 ...onChange 함수를 체크 박스에 연결하는 데 문제가 있습니다.

export class LocalGroupsTabContent extends React.Component { 

    doClick(index, event) { 
    this.props.click(index); 
    } 

    render() { 
    let activeClass = this.props.activeId; 

    let content = this.props.data.map((item, index) => { 
     return (
     <div className={'tabs-textItem ' + (activeClass === index ? 'show' : '')} > 
      <div className="tabs-third-level-menu"> 
      <div className="container"> 
       {item.links.map((link, index) => { 
       return (
        <label key={ index } className="control control--checkbox">{link} 
        <input type="checkbox" onChange={this.doClick.bind(this, index)} /> 
        <div className="control__indicator"></div> 
        </label> 
       ) 
       })} 
      </div> 
      </div> 
     </div> 
    ) 
    }); 

    return (
     <div className="tabs-content">{content}</div> 
    ); 
    } 
} 
+0

이 오류에 던져지는 당신이 항목을 클릭하면 렌더링이나? –

답변

0

문제는 당신에서는, doClick 방법으로하지 않습니다, 그것은 당신이 그 안에 지정한 클릭 방법이다. 이 방법에서는

:

doClick(index) { 
this.props.click(index); 
} 

당신이 가진 문제는 당신이 클릭 방식의 소품을 지정하지 않은 것입니다.

소품을 통해 클릭 방법을 전달하거나 (대신 onClick 핸들러를 사용하는 것이 좋음) 구성 요소에서 click 이벤트를 처리하십시오. 내 예제는 여기를 참조하십시오 :

https://codesandbox.io/s/mo7j742kkj