@parcnfalb

Почему я не могу засунуть props в state и этот state отправить дочернему компоненту?

В props этого компонента по клику приходит число(изначально null),
Если передать < Work update={this.props.update}/ > как props ниже то все работает
Если передать < Work update={this.state.update}/ >как state то не работает.
Вопрос почему это так работает?
Я переприсваиваю стейту пропс, и хочу использовать стейт чтобы передать его компоненту ниже, почему мне просто передаётся пустота?
В < Work/> компоненте просто выводится как < div>{this.props.update}< /div>
import React, { Component } from 'react'
import Work from '../Work'

export default class ArticleList extends Component {
    constructor(props) {
        super(props);
        this.state = {
            update: this.props.update
        }
    }


    render() {
        var workList = (
            <Work
                update={this.props.update}
            />
        )

        return workList
    }

}

Да я понимаю, что я чего-то сильно не понимаю
  • Вопрос задан
  • 300 просмотров
Пригласить эксперта
Ответы на вопрос 1
@dimoff66
Кратко о себе: Я есть
Если передать < Work update={this.state.update}/ >как state то не работает.


Без разницы как вы передаете. Если на момент вызова строчки
< Work update={this.state.update}/ >

значение this.state.update будет верным, то в таком виде оно попадет и в Work, но что там происходит с вашим state вышеприведенный код умалчивает. Смотрите отладчиком что содержит this.state.update
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы