Подтвердить что ты не робот

ReactJS - Как я могу получить доступ к displayName компонента с помощью javascript?

Я создаю некоторые компоненты React, а иногда хотел бы записать на консоль тип компонента, который визуализируется, с помощью "displayName", который использует JSX при отображении имени компонента.

Из контекста компонента, как я могу получить доступ к свойству displayName?

например. как я могу заставить оператор console.log в этом примере показать displayName компонента?

var Hello = React.createClass({
    displayName: 'HeyHey',

    render: function() {
        console.log(this.displayName);

        return <div>Hello {this.props.name}</div>;
    }
});

Предполагаемый вывод в консоли:

HeyHey

4b9b3361

Ответ 1

Он доступен как публичное свойство this.constructor.displayName.

Ответ 2

Вы можете найти его на this._descriptor.type

Hello <div>{this._descriptor.type.displayName}</div>

демо

Используйте это только для тестирования; он может перестать работать в любой момент. Это вряд ли будет работать в 0,12.