React Bootstrap - это одна из версий Bootstrap, созданная для React.
Это набор компонентов React со стилями Bootstrap.
В этой статье мы рассмотрим, как добавить кнопки разбивки на страницы и индикатор выполнения с помощью React Bootstrap.
Пагинация
Мы можем добавить кнопки пагинации с помощью компонента Pagination
.
Например, мы можем написать:
import React from "react"; import "bootstrap/dist/css/bootstrap.min.css"; import Pagination from "react-bootstrap/Pagination"; let active = 2; let items = []; for (let num = 1; num <= 10; num++) { items.push( <Pagination.Item key={num} active={num === active}> {num} </Pagination.Item> ); } export default function App() { return ( <> <Pagination>{items}</Pagination> </> ); }
У нас есть Pagination
компонент, внутри которого Pagination.Item
компонента для отображения ссылок на страницы.
Кроме того, для каждого элемента мы устанавливаем свойство active
, чтобы выделить тот, который активен.
Больше опций
Мы можем добавить кнопки для перехода на первую страницу, предыдущую страницу, следующую страницу, последнюю страницу и показать многоточие.
Например, мы можем написать:
import React from "react"; import "bootstrap/dist/css/bootstrap.min.css"; import Pagination from "react-bootstrap/Pagination"; export default function App() { return ( <> <Pagination> <Pagination.First /> <Pagination.Prev /> <Pagination.Item>{1}</Pagination.Item> <Pagination.Ellipsis /> <Pagination.Item disabled>{10}</Pagination.Item> <Pagination.Item>{11}</Pagination.Item> <Pagination.Item active>{12}</Pagination.Item> <Pagination.Item>{13}</Pagination.Item> <Pagination.Ellipsis /> <Pagination.Item>{20}</Pagination.Item> <Pagination.Next /> <Pagination.Last /> </Pagination> </> ); }
Компонент Pagination.First
позволяет нам добавить кнопку для перехода на первую страницу.
Pagination.Prev
позволяет нам добавить кнопку для перехода на предыдущую страницу.
Pagination.Ellipsis
позволяет нам отображать многоточие в компоненте Pagination
.
Pagination.Next
позволяет нам добавить кнопку для перехода на следующую страницу.
И Pagination.Last
позволяет нам добавить кнопку для перехода на последнюю страницу.
Индикатор
Индикатор выполнения позволяет нам показывать пользователю обратную связь.
Мы можем добавить его с помощью компонента ProgressBar
.
Например, мы можем написать:
import React from "react"; import "bootstrap/dist/css/bootstrap.min.css"; import ProgressBar from "react-bootstrap/ProgressBar"; export default function App() { return ( <> <ProgressBar now={80} /> </> ); }
Мы просто добавляем ProgressBar
с опорой now
, чтобы указать прогресс.
Мы можем добавить метку с помощью label
prop:
import React from "react"; import "bootstrap/dist/css/bootstrap.min.css"; import ProgressBar from "react-bootstrap/ProgressBar"; const now = 80; export default function App() { return ( <> <ProgressBar now={now} label={`${now}%`} /> </> ); }
Параметр srOnly
позволяет сделать ярлык доступным только для программ чтения с экрана, поэтому он не будет отображаться:
import React from "react"; import "bootstrap/dist/css/bootstrap.min.css"; import ProgressBar from "react-bootstrap/ProgressBar"; const now = 80; export default function App() { return ( <> <ProgressBar now={now} label={`${now}%`} srOnly /> </> ); }
Альтернативы стиля
Мы можем добавить опору variant
для изменения стилей:
import React from "react"; import "bootstrap/dist/css/bootstrap.min.css"; import ProgressBar from "react-bootstrap/ProgressBar"; export default function App() { return ( <> <ProgressBar variant="success" now={60} /> <ProgressBar variant="info" now={23} /> <ProgressBar variant="warning" now={30} /> <ProgressBar variant="danger" now={86} /> </> ); }
Мы добавляем variant
с разными именами, чтобы стилизовать их по-разному.
Теперь полоски должны быть разного цвета.
Полосатый
Мы можем добавить полосы к полосам с помощью опоры striped
:
import React from "react"; import "bootstrap/dist/css/bootstrap.min.css"; import ProgressBar from "react-bootstrap/ProgressBar"; export default function App() { return ( <> <ProgressBar striped variant="success" now={60} /> <ProgressBar striped variant="info" now={23} /> <ProgressBar striped variant="warning" now={30} /> <ProgressBar striped variant="danger" now={86} /> </> ); }
Анимированные полосы
Чтобы сделать их полосы анимированными, мы можем добавить опору animated
:
import React from "react"; import "bootstrap/dist/css/bootstrap.min.css"; import ProgressBar from "react-bootstrap/ProgressBar"; export default function App() { return ( <> <ProgressBar animated variant="success" now={60} /> </> ); }
Сложены
Можно складывать несколько индикаторов выполнения.
Например, мы можем написать:
import React from "react"; import "bootstrap/dist/css/bootstrap.min.css"; import ProgressBar from "react-bootstrap/ProgressBar"; export default function App() { return ( <> <ProgressBar> <ProgressBar striped variant="success" now={25} key={1} /> <ProgressBar variant="warning" now={20} key={2} /> <ProgressBar striped variant="danger" now={10} key={3} /> </ProgressBar> </> ); }
Мы добавляем key
, чтобы React мог их идентифицировать.
И мы добавляем variant
, чтобы стилизовать их по-другому.
now
имеет прогресс.
Они отображаются один за другим.
Заключение
Мы можем добавить нумерацию страниц с помощью компонента Pagination
.
Он имеет множество кнопок для разбивки на страницы и кнопок для перехода на разные страницы.
React Bootstrap также поставляется с компонентом индикатора выполнения, который может иметь различные стили и метки.
JavaScript на простом английском языке
Понравилась эта статья? Если да, то получите больше похожего контента, подписавшись на наш канал YouTube в Decoded!