/
githubmirror
/
redux
Обзор
Документация
Войти
/
githubmirror
/
redux
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
examples/todomvc/src/components/Footer.js
42 строки
1 KB
Tim Dorr
Format the examples
20 мар 2024, 19:52
Не верифицирован
20 мар 2024, 19:52
3085048
Код
Авторство
О чём код?
import React from 'react' import PropTypes from 'prop-types' import FilterLink from '../containers/FilterLink' import { SHOW_ALL, SHOW_COMPLETED, SHOW_ACTIVE } from '../constants/TodoFilters' const FILTER_TITLES = { [SHOW_ALL]: 'All', [SHOW_ACTIVE]: 'Active', [SHOW_COMPLETED]: 'Completed' } const Footer = props => { const { activeCount, completedCount, onClearCompleted } = props const itemWord = activeCount === 1 ? 'item' : 'items' return ( <footer className="footer"> <span className="todo-count"> <strong>{activeCount || 'No'}</strong> {itemWord} left </span> <ul className="filters"> {Object.keys(FILTER_TITLES).map(filter => ( <li key={filter}> <FilterLink filter={filter}>{FILTER_TITLES[filter]}</FilterLink> </li> ))} </ul> {!!completedCount && ( <button className="clear-completed" onClick={onClearCompleted}> Clear completed </button> )} </footer> ) } Footer.propTypes = { completedCount: PropTypes.number.isRequired, activeCount: PropTypes.number.isRequired, onClearCompleted: PropTypes.func.isRequired } export default Footer