Это проект представляет собой контекстное меню, которое открывается при нажатии правой кнопки мыши. В этом меню представлены различные модули, каждый из которых имеет свою уникальную функциональность. Модули включают в себя разнообразные функции, например, изменение цвета фона, отображение случайной цитаты, воспроизведение случайного звука и т. д.
- Клонируйте репозиторий с проектом на свой компьютер:
git clone <URL_репозитория>
- Установите все необходимые зависимости:
npm install
- Запустите проект:
npm start
Метод add
в menu.js
выполнен так, что упрощает разработку новых модулей благодаря методам render()
и trigger()
.
Метод render()
отвечает за отображение модуля в пользовательском интерфейсе, а метод trigger()
активирует функциональность модуля.
Чтобы создать новый модуль, выполните следующие шаги:
- Создайте новый файл с расширением
.js
в директорииsrc/modules
. - Импортируйте базовый класс
Module
из../core/module
. - Создайте класс для вашего модуля, который наследуется от
Module
. - Реализуйте метод
trigger()
в вашем классе. - Экспортируйте ваш класс из файла.
Пример создания нового модуля:
import { Module } from '../core/module'
export class MyNewModule extends Module {
constructor(type, text) {
super(type, text)
}
trigger() {
// ваш код здесь
}
}
Этот модуль отвечает за изменение цвета фона страницы. Он импортирует базовый класс Module
из ../core/module
и функцию random
из ../utils
.
Этот модуль создает модальное окно с таймером и счетчиком кликов.
Этот модуль создает интерактивное взаимодействие с пользователем, предлагая ему погладить картинку кота, и затем отображая смешную картинку и текстовое сообщение.
Этот модуль при активации отправляет GET-запрос на API https://api.quotable.io/random
и отображает случайную цитату в всплывающем окне alert.
Этот модуль при активации отправляет GET-запрос на API https://freesound.org/apiv2/
и воспроизводит случайный звук.
Этот модуль отвечает за создание случайных геометрических фигур на экране и удаленяет фигуру по нажатию на неё.
Этот модуль отвечает за создание таймера обратного отсчета.
Тимлид: .maksimgrigorev
iskareon
sadbatya
k5yan