как сделать модальное окно react

Аватар пользователя Aleksey
Aleksey
13 апреля 2023

Для создания модального окна в React.js можно использовать различные библиотеки, например, react-modal или react-bootstrap. Рассмотрим пример использования react-modal.

  • Устанавливаем библиотеку react-modal с помощью npm:
npm install react-modal
  • Импортируем библиотеку react-modal в наш компонент:
import React, { useState } from 'react';
import Modal from 'react-modal';
  • Создаем состояние для открытия и закрытия модального окна, а также функцию для изменения этого состояния:
const [modalIsOpen, setModalIsOpen] = useState(false);

const openModal = () => {
  setModalIsOpen(true);
};

const closeModal = () => {
  setModalIsOpen(false);
};
  • Определяем содержимое модального окна:
const modalContent = (
  <div>
    <h2>Заголовок модального окна</h2>
    <p>Текст модального окна</p>
    <button onClick={closeModal}>Закрыть</button>
  </div>
);
  • Рендерим кнопку для открытия модального окна и компонент Modal:
return (
  <div>
    <button onClick={openModal}>Открыть модальное окно</button>
    <Modal isOpen={modalIsOpen} onRequestClose={closeModal}>
      {modalContent}
    </Modal>
  </div>
);

Готово! Теперь при клике на кнопку будет открываться модальное окно с заданным содержимым.

0 0
Основы Frontend за 14 дней
  • 72 урока в онлайн-тренажере
  • 4 живых вебинара и масскодинг
  • Помощь наставника на весь период обучения

Есть что добавить? Зарегистрируйтесь

или войдите в аккаунт

Отправляя форму, вы принимаете «Соглашение об обработке персональных данных» и условия «Оферты», а также соглашаетесь с «Условиями использования»

Курсы по программированию в Хекслете

Backend-разработка

Разработка серверной части сайтов и веб-приложений

Frontend-разработка

Разработка внешнего интерфейса сайтов и веб-приложений и верстка

Создание сайтов

Разработка сайтов и веб-приложений на JS, Python, Java, PHP и Ruby on Rails

Тестирование

Ручное тестирование и автоматизированное тестирование на JS, Python, Java и PHP

Аналитика данных

Сбор, анализ и интерпретация данных на Python

Интенсивные курсы

Интенсивное обучение для продолжающих

DevOps

Автоматизация настройки локального окружения и серверов, развертывания и деплоя

Веб-разработка

Разработка, верстка и деплой сайтов и веб-приложений, трудоустройство для разработчиков

Математика для программистов

Обучение разделам математики, которые будут полезны при изучении программирования

JavaScript

Разработка сайтов и веб-приложений и автоматизированное тестирование на JS

Python

Веб-разработка, автоматическое тестирование и аналитика данных на Python

Java

Веб-разработка и автоматическое тестирование на Java

PHP

Веб-разработка и автоматическое тестирование на PHP

Ruby

Разработка сайтов и веб-приложений на Ruby on Rails

Go

Курсы по веб-разработке на языке Go

HTML

Современная верстка с помощью HTML и CSS

SQL

Проектирование базы данных, выполнение SQL-запросов и изучение реляционных СУБД

Git

Система управления версиями Git, регулярные выражения и основы командой строки