🎨⚛️ CSS в React: сравниваем 5 подходов к стилизации
Стилизация React-приложений может быть сложной задачей: существует множество подходов, и выбор подходящего способа влияет на удобство разработки, производительность приложения и легкость управления кодом. Разберем основные методы стилизации, их преимущества и недостатки. Этот материал взят из нашей еженедельной email-рассылки, посвященной фронтенду. Подпишитесь, чтобы быть в числе первых, кто получит дайджест. 📧 Подписаться (function () { let link = document .getElementById ("6e695f86-790c-4556-ab60-83f0715ec69c-https://proglib...
160 читали · 1 год назад
🌟 Создание Typing Test приложения на React + TypeScript + Redux Toolkit 🟡Задачи: 1. У пользователей должна быть возможность выбирать количество предложений 2. Текст необходимо получать из внешнего API; 3. Применение соответствующих стилей для правильного и неправильного символа; 4. Подсветка текущего символа; 5. Приложение должно вычислять и отображать скорость и точность печати текста пользователем; 6. Пользователи должны иметь возможность перезапустить текущий тест. Настройка проекта • Создадим React проект с TypeScript шаблоном, выполнив в терминале следующую команду: npx create-react-app typing-test-app --template typescript. • После завершения установки, перейдем в директорию проекта, установим axios (npm install axios) и Redux Toolkit (npm install @reduxjs/toolkit react-redux). • Удалим все файлы, которые нам не пригодятся (оставим index.tsx, App.tsx, index.css, react-app-env.d.ts). • Создадим папки api, assets, components, helpers, redux, types и style. Файл index.css переместим в папку style. • Отредактируем оставшиеся файлы. 🟢 Файл index.tsx: import React from 'react'; import ReactDOM from 'react-dom/client'; import './style/index.css'; import App from './App'; const root = ReactDOM.createRoot( document.getElementById('root') as HTMLElement ); root.render( <React.StrictMode> <App /> </React.StrictMode> ); 🟢 Файл App.tsx: import { FunctionComponent } from 'react'; const App:FunctionComponent = () => { return ( <> </> ); }; export default App; Приложение мы пишем на TypeScript, поэтому для функциональных компонентов желательно указывать тип FunctionComponent, который мы импортируем из React. ✔️ Продолжение @javascript_react