Skip to content

sava642/React-module2__tasks

Repository files navigation

Шаг 1​

Приложение должно отображать количество собранных отзывов для каждой категории. Приложение не должно сохранять статистику отзывов между разными сессиями (обновление страницы).

Состояние приложения обязательно должно быть следующего вида, добавлять новые свойства нельзя.

state = { good: 0, neutral: 0, bad: 0 }

Интерфейс может выглядеть так.

component preview Шаг 2​

Расширь функционал приложения так, чтобы в интерфейсе отображалось больше статистики о собранных отзывах. Добавь отображение общего количества собранных отзывов из всех категорий и процент положительных отзывов. Для этого создай вспомогательные методы countTotalFeedback() и countPositiveFeedbackPercentage(), подсчитывающие эти значения основываясь на данных в состоянии (вычисляемые данные).

component preview Шаг 3​

Выполни рефакторинг приложения. Состояние приложения должно оставаться в корневом компоненте .

Вынеси отображение статистики в отдельный компонент . Вынеси блок кнопок в компонент . Создай компонент

, который рендерит секцию с заголовком и детей (children). Оберни каждый из и в созданный компонент секции. Шаг 4​

Расширь функционал приложения так, чтобы блок статистики рендерился только после того, как был собран хотя бы один отзыв. Сообщение об отсутствиии статистики вынеси в компонент .