предотвращение componentWillReceivePropsrender для каждого setState здесь? - PullRequest
0 голосов
/ 04 марта 2020

У меня есть жизненный цикл componentWillReceiveProps, но, как вы можете видеть, я использую setState здесь три раза. Как я могу предотвратить рендеринг React при каждом вызове «setState» в этом случае?

    componentWillReceiveProps = (newProps) => {
    let apiDat = newProps.apiDat;

    let apiData = newProps.apiData;
    if (apiData.activities && apiData.activities.success ) {
        let therapists = apiData.activities.therapists;
        let hasMore = true;
        if (therapists.length < 10) {
            hasMore = false;
        }

        this.setState(() => ({
            therapists: this.state.therapists.concat(therapists),
            hasMore: hasMore,
            pageLoading: false
        }))
    }
    if (apiDat.targets && apiDat.targets.success) {
        let globalTargets = apiDat.targets.globals;
        let hasMore = true;
        if (globalTargets.length < 10) {
            hasMore = false;
        }

        this.setState(() => ({
            globalTargets: this.state.globalTargets.concat(globalTargets),
        }))
    }
    if (apiData.followActivities && apiData.followActivities.success) {
        let follows = apiData.followActivities.follows;
        let hasMore = true;
        if (follows.length < 10) {
            hasMore = false;
        }

        this.setState(() => ({
            follows: this.state.follows.concat(follows),
        }))
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...