React에서 이벤트 핸들러를 트리거하는 구성 요소를 확인하는 방법은 무엇입니까?

Vayn

이벤트 핸들러를 React의 여러 구성 요소에 바인딩하고 싶습니다. 이제 className모든 구성 요소를 설정 하고 event.currentTarget.className어떤 구성 요소가 핸들러를 트리거하는지 결정하는 데 사용 합니다.

handleClick: function (e) {
    var className = e.currentTarget.className;
    if (className === "longComment") {
        this.setState({showLongComment: !this.state.showLongComment});
    } else {
        this.setState({showShortComment: !this.state.showShortComment});
    }
},

render: function () {
    var topic = this.props.topic;
    var shortComment = this.state.showShortComment ? '[-]' : '[+]';
    var longComment = this.state.showLongComment ? '[--]' : '[++]';

    return (
        <li className="topic">
            <div className="title">
                <a target="_blank" href={api}>
                    {this.props.children.toString()}
                </a>&nbsp;
                <span className="longComment" onClick={this.handleClick}>
                    {longcomment}
                </span>
                <span className="shortComment" onClick={this.handleClick}>
                    {shortcomment}
                </span>
            </div>
            {this.state.showLongComment ? <CommentList url={url} /> : null}
            {this.state.showShortComment ? <CommentList url={url} /> : null}
        </li>
    );
}

React에서 이벤트 핸들러를 트리거하는 구성 요소를 알 수있는 기본 방법이 있습니까?

닐군

다른 매개 변수를 handleClick함수 에 바인딩하여 원하는 것을 얻을 수 있습니다 .

handleClick: function (propertyName) {

    var newState = {};
    newState[propertyName] = !this.state[propertyName];
    this.setState(newState);

},

render: function () {
    var topic = this.props.topic;
    var shortComment = this.state.showShortComment ? '[-]' : '[+]';
    var longComment = this.state.showLongComment ? '[--]' : '[++]';

    return (
        <li className="topic">
            <div className="title">
                <a target="_blank" href={api}>
                    {this.props.children.toString()}
                </a>&nbsp;
                <span className="longComment" onClick={this.handleClick.bind(this,"showLongComment")}>
                    {longcomment}
                </span>
                <span className="shortComment" onClick={this.handleClick.bind(this,"showShortComment")}>
                    {shortcomment}
                </span>
            </div>
            {this.state.showLongComment ? <CommentList url={url} /> : null}
            {this.state.showShortComment ? <CommentList url={url} /> : null}
        </li>
    );
}

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

vue.js를 사용하여 앱의 다른 구성 요소에서 구성 요소 이벤트를 트리거하는 방법은 무엇입니까?

분류에서Dev

Angular 2의 자식 구성 요소 이벤트에서 부모 구성 요소의 로컬 참조를 트리거하는 방법은 무엇입니까?

분류에서Dev

이벤트에 DOM 요소를 생성 한 다음 DOM 요소가 존재할 때까지 이벤트 핸들러가 트리거되는 것을 방지하는 방법은 무엇입니까?

분류에서Dev

이벤트가 타사 lib에서 트리거 될 때 React 구성 요소가 상태를 변경하도록 지시하는 방법은 무엇입니까?

분류에서Dev

구성 요소 내부의 요소에서 전환 이벤트를 트리거하는 방법은 무엇입니까?

분류에서Dev

하나의 핸들러에서 여러 변경 이벤트를 처리하는 방법은 무엇입니까?

분류에서Dev

React : 이벤트 핸들러 내에서 반응 후크를 호출하는 방법은 무엇입니까?

분류에서Dev

React Bootstrap 선택 구성 요소에 핸들러를 연결하는 방법은 무엇입니까?

분류에서Dev

구성 요소 마운트 해제 반응 js에서 이벤트 리스너를 제거하는 방법은 무엇입니까?

분류에서Dev

구성 요소에서 중첩 함수로 이벤트를 전달하는 방법은 무엇입니까?

분류에서Dev

하위 구성 요소에서 클릭 이벤트를 발생시키는 방법은 무엇입니까?

분류에서Dev

부모 뷰에서 구성 요소를 트리거하는 방법은 무엇입니까?

분류에서Dev

React의 자식 구성 요소에서 onchange 이벤트로 부모 클래스 구성 요소의 함수를 호출하는 방법은 무엇입니까?

분류에서Dev

선언적 구성 요소에서 onChange 이벤트 리스너를 만드는 방법은 무엇입니까?

분류에서Dev

jest에서 지연된 이벤트 핸들러를 테스트하는 방법은 무엇입니까?

분류에서Dev

Android에서 동적으로 생성 된 뷰를 만들 때 이벤트 핸들러를 추가하는 방법은 무엇입니까?

분류에서Dev

여러 하위 구성 요소로 React 구성 요소를 테스트하는 방법은 무엇입니까?

분류에서Dev

JavaScript의 이벤트 핸들러에서 공용 함수를 호출하는 방법은 무엇입니까?

분류에서Dev

React 양식 입력 이벤트 핸들러를 사용하는 방법은 무엇입니까?

분류에서Dev

이벤트 핸들러를 요소 클래스 메소드로 정의하는 방법은 무엇입니까?

분류에서Dev

.one () 함수가 호출 된 후 이벤트 핸들러를 활성화하는 방법은 무엇입니까?

분류에서Dev

MVVM에서 이벤트를 처리하는 동안 이벤트 핸들러의 두 번째 매개 변수를 보내는 방법은 무엇입니까?

분류에서Dev

웹 구성 요소에서 사용자 지정 이벤트를 잡는 방법은 무엇입니까?

분류에서Dev

부모 구성 요소 OnSubmit Angular 4에서 자식 구성 요소의 유효성 검사를 트리거하는 방법은 무엇입니까?

분류에서Dev

Polymer의 맞춤 요소 속성에 이벤트 리스너를 추가하는 방법은 무엇입니까?

분류에서Dev

React에서 Headroom을 트리거하기 위해 구성 요소 높이를 얻는 방법은 무엇입니까?

분류에서Dev

부모 / 래퍼 구성 요소를 "트리거"로 만들거나 자식에 대한 메서드를 호출하는 방법은 무엇입니까?

분류에서Dev

Form의 각 컨트롤에 이벤트 처리기를 추가하는 구성 요소를 만드는 방법은 무엇입니까?

분류에서Dev

Form의 각 컨트롤에 이벤트 처리기를 추가하는 구성 요소를 만드는 방법은 무엇입니까?

Related 관련 기사

  1. 1

    vue.js를 사용하여 앱의 다른 구성 요소에서 구성 요소 이벤트를 트리거하는 방법은 무엇입니까?

  2. 2

    Angular 2의 자식 구성 요소 이벤트에서 부모 구성 요소의 로컬 참조를 트리거하는 방법은 무엇입니까?

  3. 3

    이벤트에 DOM 요소를 생성 한 다음 DOM 요소가 존재할 때까지 이벤트 핸들러가 트리거되는 것을 방지하는 방법은 무엇입니까?

  4. 4

    이벤트가 타사 lib에서 트리거 될 때 React 구성 요소가 상태를 변경하도록 지시하는 방법은 무엇입니까?

  5. 5

    구성 요소 내부의 요소에서 전환 이벤트를 트리거하는 방법은 무엇입니까?

  6. 6

    하나의 핸들러에서 여러 변경 이벤트를 처리하는 방법은 무엇입니까?

  7. 7

    React : 이벤트 핸들러 내에서 반응 후크를 호출하는 방법은 무엇입니까?

  8. 8

    React Bootstrap 선택 구성 요소에 핸들러를 연결하는 방법은 무엇입니까?

  9. 9

    구성 요소 마운트 해제 반응 js에서 이벤트 리스너를 제거하는 방법은 무엇입니까?

  10. 10

    구성 요소에서 중첩 함수로 이벤트를 전달하는 방법은 무엇입니까?

  11. 11

    하위 구성 요소에서 클릭 이벤트를 발생시키는 방법은 무엇입니까?

  12. 12

    부모 뷰에서 구성 요소를 트리거하는 방법은 무엇입니까?

  13. 13

    React의 자식 구성 요소에서 onchange 이벤트로 부모 클래스 구성 요소의 함수를 호출하는 방법은 무엇입니까?

  14. 14

    선언적 구성 요소에서 onChange 이벤트 리스너를 만드는 방법은 무엇입니까?

  15. 15

    jest에서 지연된 이벤트 핸들러를 테스트하는 방법은 무엇입니까?

  16. 16

    Android에서 동적으로 생성 된 뷰를 만들 때 이벤트 핸들러를 추가하는 방법은 무엇입니까?

  17. 17

    여러 하위 구성 요소로 React 구성 요소를 테스트하는 방법은 무엇입니까?

  18. 18

    JavaScript의 이벤트 핸들러에서 공용 함수를 호출하는 방법은 무엇입니까?

  19. 19

    React 양식 입력 이벤트 핸들러를 사용하는 방법은 무엇입니까?

  20. 20

    이벤트 핸들러를 요소 클래스 메소드로 정의하는 방법은 무엇입니까?

  21. 21

    .one () 함수가 호출 된 후 이벤트 핸들러를 활성화하는 방법은 무엇입니까?

  22. 22

    MVVM에서 이벤트를 처리하는 동안 이벤트 핸들러의 두 번째 매개 변수를 보내는 방법은 무엇입니까?

  23. 23

    웹 구성 요소에서 사용자 지정 이벤트를 잡는 방법은 무엇입니까?

  24. 24

    부모 구성 요소 OnSubmit Angular 4에서 자식 구성 요소의 유효성 검사를 트리거하는 방법은 무엇입니까?

  25. 25

    Polymer의 맞춤 요소 속성에 이벤트 리스너를 추가하는 방법은 무엇입니까?

  26. 26

    React에서 Headroom을 트리거하기 위해 구성 요소 높이를 얻는 방법은 무엇입니까?

  27. 27

    부모 / 래퍼 구성 요소를 "트리거"로 만들거나 자식에 대한 메서드를 호출하는 방법은 무엇입니까?

  28. 28

    Form의 각 컨트롤에 이벤트 처리기를 추가하는 구성 요소를 만드는 방법은 무엇입니까?

  29. 29

    Form의 각 컨트롤에 이벤트 처리기를 추가하는 구성 요소를 만드는 방법은 무엇입니까?

뜨겁다태그

보관