2014-11-21 3 views
1

React.js를 사용하여 구성 요소를 만들었습니다 var A = React.createClass({ abc: function() {} }) abc 방법을 사용하려면 어떻게해야합니까? A.prototype.abc가 정의되지 않았습니다.React.js 클래스 수정 - 메소드 재정의?

+0

(가) [구성 요소 간의 통신]하는 방법에 대한 문서 반응 참조 (https://facebook.github.io/react/tips/communicate-between-components.html). 특히, "부모 - 자식 관계가없는 두 구성 요소 간 통신의 경우, 자체 전역 이벤트 시스템을 설정할 수 있습니다." –

답변

1

React 구성 요소의 모든 메소드는 비공개로 간주되어야합니다. 매우 드문 예외가 있습니다. 구성 요소의 공용 API는 필요한 소품입니다.

+0

예를 들어 string을 형식화하는 도우미 메소드. 소품에 넣어도 괜찮습니까? –

+0

물론, 소품으로 좋아하는 것을 전달할 수 있습니다. – FakeRainBrigand

1

일반 js 개체에 메서드를 저장하고 메서드 toReact을 추가하기로 결정했습니다. Exmaple가 :

var Game = { 
render: function() { 
    return (
     <PlayersTable data={ this.props.data } /> 
    ) 
    }, 

    toReact: function() { 
    return React.createClass(this) 
    } 
}