Как передать данные устройства в компонент React? - PullRequest
0 голосов
/ 07 сентября 2018

Я пытаюсь передать данные Devise компоненту React. Devise настроен правильно, но я не могу понять, как передать информацию current_user в качестве реквизита для моего response_component. Реактивный реквизит current_user продолжает регистрироваться как несуществующий. Я использую React v5.1 и React-Rails v2.4.

index.html.erb

<%= react_component 'Main', props: {current_user: @current_user} %>

_main.js.jsx

var Main = createReactClass({
    render () {
        return (
            <div>
                {this.props.current_user.id}
                <Header />
                <Body />
            </div>
        );
    }
});

Ответы [ 2 ]

0 голосов
/ 07 сентября 2018

Это должно быть похоже на следующее

<%= react_component 'Main', props: {current_user: current_user.to_json} %>

Реактивная сторона

var Main = createReactClass({
    getInitialState() {
    return {
      currentUser: this.props.current_user
    };
    render () {
        return (
            <div>
                {this.state.currentUser.id}
                <Header />
                <Body />
            </div>
        );
    }
});
0 голосов
/ 07 сентября 2018

Попробуйте props: {current_user: current_user} вместо props: {current_user: @current_user}

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...