Автор оригинала: FreeCodeCamp Community Member.
Пакет Create App React делает создание и разработка реагированных приложений Breeze.
Это один из самых простых способов раскрутить новый проект реагирования и является идеальным выбором для использования для ваших собственных личных проектов, а также для серьезных крупномасштабных приложений.
Мы собираемся прикрыть, пошаговые, как использовать все основные функции создания приложения RACT для быстрого и легко создавать свои собственные реагировать проекты.
На протяжении всего этого руководства я также включал много полезных советов, которые я узнал через создание приложений с созданием приложения React, чтобы сделать ваш рабочий процесс еще проще.
Давайте начнем.
Инструменты, которые вам понадобится:
- Узел установлен на вашем компьютере. Вы можете скачать узел в nodejs.org Отказ Приложение CREATE RACT требует узла версии не менее 10.
- Менеджер пакета называется NPM. Он автоматически включен в вашу установку узла. Вам нужно иметь версию NPM не менее 5,2.
- Хороший редактор кода для работы с нашими файлами проекта. Я настоятельно рекомендую использовать редактор Visual Studio Code. Вы можете схватить его на Code.visualstudio.com Отказ
Шаг 1. Как установить создание приложения React
Чтобы использовать создание приложения RACT, нам сначала нужно открыть наш терминал или командную строку на нашем компьютере.
Чтобы создать новый проект RACT, мы можем использовать инструмент NPX
При условии, что у вас есть версия NPM не менее 5,2.
NPX дает нам возможность использовать Create-React-App
Пакет без необходимости сначала установить его на нашем компьютере, который очень удобно.
Использование NPX также гарантирует, что мы используем последнюю версию приложения Create React для создания нашего проекта:
npx create-react-app my-react-app
Как только мы запустим эту команду, будет создана папка с именем «My-React-App-App», где мы указываем на нашем компьютере, и все пакеты, которые необходимо автоматически установить.
Create App App также дает нам некоторые шаблоны для использования для конкретных типов реагированных проектов.
Например, если мы хотели создать проект React, который использовал инструмент TeampScript, мы могли бы использовать шаблон для этого вместо того, чтобы вместо того, чтобы установить Teampcript вручную.
Чтобы создать приложение React, которое использует TypeScript, мы можем использовать шаблон Teampress App Create React App:
npx create-react-app my-react-app --template typescript
Шаг 2. Просмотр структуры проекта
Как только наши файлы проекта были созданы, и наши зависимости были установлены, наша структура проекта должна выглядеть так:
my-react-app ├── README.md ├── node_modules ├── package.json ├── .gitignore ├── public └── src
Для чего каждый из этих файлов и папок?
Readme.md
Это файл Markdown, который включает в себя много полезных советов и ссылок, которые могут помочь вам во время учебы использования приложения Create React.node_modules
Это папка, которая включает в себя все, связанные с зависимостями кода, который создает App App. Вам никогда не нужно будет войти в эту папку.Package.json
Это управляет нашим приложенным зависимостям и то, что включено в нашу папку Node_Modules для нашего проекта, а также скрипты нам нужно запустить наше приложение..gitignore
это файл, который используется для исключения файлов и папок от отслеживания GIT. Мы не хотим включать большие папки, такие как папка Node_Modulesпубличный
Это папка, которую мы можем использовать для хранения наших статических активов, таких как изображения, SVGS и шрифты для нашего приложения React.SRC
это папка, которая содержит наш исходный код. Именно здесь весь наш код, связанный с React, который будет жить и будет то, что мы будем в первую очередь работать, чтобы построить наше приложение.
Шаг 3. Как запустить ваш реактивный проект
После того, как вы перетащили свой проект в свой код кода, вы можете открыть свой терминал (в VSCode, Go для просмотра> Terminal).
Чтобы начать свой реагировать проект, вы можете просто запустить:
npm start
Когда мы запустим наш проект, новая вкладка браузера автоматически откроется в браузере нашего компьютера для просмотра нашего приложения.
Сервер разработки начнется на localhost: 3000 и, сразу же, мы можем увидеть начальную домашнюю страницу для нашего приложения.
Откуда приходит наше контент приложения?
Он приходит из файла App.js в папке SRC. Если мы отправляемся к этому файлу, мы можем начать вносить изменения в наш код приложения.
// src/App.js import logo from "./logo.svg"; import "./App.css"; function App() { return (); } export default App;Edit src/App.js and save to reload.
Learn React
В частности, давайте удалим P
и А
Теги, и добавьте H1
Элемент с именем нашего приложения, «Реагирование постов Sharer»:
// src/App.js import logo from "./logo.svg"; import "./App.css"; function App() { return (); } export default App;React Posts Sharer
Когда вы сохраняете с помощью команды/Ctrl + S, вы увидите нашу страницу немедленно обновить, чтобы выглядеть так:
Что значительно относится к серверу разработки, заключается в том, что он автоматически обновляется, чтобы отразить наши изменения. Нет необходимости вручную обновить браузер.
Шаг 4. Как запустить тесты с библиотекой тестирования реагирования
Create App App делает очень просто для проверки вашего приложения RACT.
Он включает в себя все пакеты, которые вам необходимо запустить тесты, используя библиотеку тестирования React React ( @ Testing-library/React
).
Базовый тест включен в файл App.test.js в SRC. Он проверяет, что наш компонент приложения успешно отображает ссылку с текстом «Изучить реагирование».
Мы можем запустить наши тесты с помощью команды:
npm run test
Если мы запустим это, однако, наш тест потерпит неудачу.
Это потому, что у нас больше нет элемента связи, а элемент заголовка. Чтобы сделать наш тестовый проход, мы хотим получить титульный элемент с текстом «Реагирование постов Sharer».
// src/App.test.js import { render, screen } from "@testing-library/react"; import App from "./App"; test("renders app title element", () => { render(); const titleElement = screen.getByText(/React Posts Sharer/i); expect(titleElement).toBeInTheDocument(); });
Как только мы снова запустим наш тест, мы видим, что он проходит:
PASS src/App.test.js ✓ renders app title element (54 ms) Test Suites: 1 passed, 1 total Tests: 1 passed, 1 total Snapshots: 0 total Time: 2.776 s, estimated 3 s Ran all test suites related to changed files.
Шаг 5. Как изменить метаданные приложения
Как работает наша проекта? Мы видим, как собираемся в файл index.js.
// src/index.js import React from 'react'; import ReactDOM from 'react-dom'; import './index.css'; import App from './App'; import reportWebVitals from './reportWebVitals'; ReactDOM.render(, document.getElementById('root') );
В пакете взаимодействует на нашем применении (в частности, компонент приложения и каждый компонент в нем), придавая его к элементу HTML с значением идентификационного значения «root».
Этот элемент можно найти в Public/index.html
Отказ
React App
Все ACV-приложение прикреплено к этой HTML-странице, используя div с идентификатором root, который вы видите выше.
Нам не нужно ничего менять в пределах Тело
Теги. Тем не менее, полезно изменить метаданные в голова
Теги, чтобы сообщить пользователям и поисковые системы о нашем конкретном приложении.
Мы видим, что он включает в себя Meta Tags для заголовка, описания и изображения FAVICON (немного значок на вкладке браузера).
Вы также увидите несколько других тегов, таких как тематический цвет, Apple-Touch-icon и Mainest. Они полезны, если пользователи хотят добавить ваше приложение на свое устройство или домашний экран компьютера.
В нашем случае мы можем изменить название на наше имя приложения и описание в соответствии с приложением, которое мы делаем:
React Posts Sharer
Шаг 6. Как работать с изображениями и другими активами
Если мы посмотрим на наш компонент приложения, мы видим, что мы используем IMG
элемент.
Что интересно, так это то, что мы импортируем файл из нашей папки SRC, как если бы это была экспортирована переменной из этого файла.
// src/App.js import "./App.css"; import logo from "./logo.svg"; function App() { return (); } export default App;React Posts Sharer
Мы можем импортировать файлы изображений и другие статические активы непосредственно в наши компоненты реагирования. Эта функция поступает из конфигурации WebPack Create React App.
Вместо того, чтобы включить статические активы непосредственно в нашей папке SRC, у нас также есть возможность включить их в нашу общую папку.
Если мы переместим наш файл logo.svg из SRC для публики, вместо импортирования нашего файла, используя синтаксис импорта, мы можем написать следующее:
// src/App.js import "./App.css"; function App() { return (); } export default App;React Posts Sharer
Любой файл, который помещен в общедоступной папке, можно использовать в файлах .js или .css с синтаксисом: /filename.extension
Отказ
Что удобно о создании приложения React – это то, что нам не нужно использовать IMG
Элемент вообще для отображения этого SVG.
Мы можем импортировать этот SVG в качестве компонента, используя следующий синтаксис:
// src/App.js import { ReactComponent as Logo } from "./logo.svg"; import "./App.css"; function App() { return (); } export default App;React Posts Sharer
Что здесь происходит? Мы можем импортировать файл SVG в качестве RegactComponent, а затем переименовать его на любое имя, которое нам нравится использовать как
ключевое слово.
Другими словами, мы можем использовать наш импортный SVG, как мы бы регулярным компонентом.
Файлы SVG традиционно сложно использовать в реакции. Этот компонентный синтаксис делает его очень простым и позволяет нам делать такие вещи, как использовать встроенные стили (например, вы видите выше, где мы устанавливаем высоту логотипа на 200px).
Шаг 7. Как установить зависимости
Для нашего приложения для обмена сообщениями, которые мы делаем, давайте схватим некоторые данные для отображения в нашем приложении от API JSON Plactholder.
Мы можем использовать зависимость под названием Axios
Чтобы сделать запрос, чтобы получить наши посты.
Чтобы установить Axios, запустить:
npm install axios
Когда мы устанавливаем Axios, он будет добавлен к нашему node_modules
папка.
Мы можем просмотреть все зависимости, которые мы установили непосредственно в нашем файле Package.json, и посмотрите, что Axios был добавлен в раздел «Зависимости»:
{ "name": "my-react-app", "version": "0.1.0", "private": true, "dependencies": { "@testing-library/jest-dom": "^5.11.4", "@testing-library/react": "^11.1.0", "@testing-library/user-event": "^12.1.10", "axios": "^0.21.1", "react": "^17.0.1", "react-dom": "^17.0.1", "react-scripts": "4.0.2", "web-vitals": "^1.0.1" } }
Мы не будем включать его в этот проект, но если вы заинтересованы в использовании Tymdercript с существующим проектом Create App App, процесс очень прост.
Вам просто нужно установить Tymdercript
Зависимость и соответствующие определения типа для использования для развития и тестирования реагирования:
npm install typescript @types/node @types/react @types/react-dom @types/jest
После этого вы можете просто перезапустить свой сервер разработки и переименовать любой файл RACHION, который заканчивается .js to .tsx, и у вас есть рабочий реагирование и напечатает проект.
Шаг 8. Как импортировать компоненты
Вместо того, чтобы написать весь наш код в компоненте приложения, давайте создадим отдельный компонент, чтобы получить наши данные и отобразить его.
Мы назовем эти компоненты, поэтому давайте создадим папку в SRC, чтобы удерживать все наши компоненты и поставить файл в нем: posts.js.
Полный путь для нашего файла компонента – SRC/Компоненты/Posts.js
Отказ
Чтобы извлечь наши посты, мы попросим их от JSON Placeholder, поместив их в государственную переменную, называемые сообщениями, а затем набрать над ними, чтобы отобразить их заголовок и тело:
// src/components/Posts.js import React from "react"; import axios from "axios"; function Posts() { const [posts, setPosts] = React.useState([]); React.useEffect(() => { axios .get("http://jsonplaceholder.typicode.com/posts") .then((response) => setPosts(response.data)); }, []); return (
-
{posts.map((post) => (
-
{post.title}
{post.body}
))}
Мы выбираем и возвращая наши данные по сообщениям составляющих компонента, но чтобы увидеть его в нашем приложении, нам нужно импортировать его в компонент приложения.
Давайте вернемся к App.js и импортируем его, перейдем к папке компонентов и получение компонентов постов из Posts.js.
После этого мы можем разместить состав наших постов под нашими Заголовок
:
// src/App.js import Posts from "./components/Posts"; import "./App.css"; function App() { return (); } export default App;React Posts Sharer
И мы можем видеть все наши привлеченные сообщения на нашей домашней странице ниже нашего заголовка:
Шаг 9: Как стирать ваше приложение с CSS
Наше приложение может воспользоваться некоторыми улучшенными стилями.
Create rac ract app поставляется с поддержкой CSS из коробки. Если вы отправитесь в App.js, вы можете увидеть в верхней части, что мы импортируем файл App.css из SRC.
В App.csss мы можем добавить некоторые стили, чтобы улучшить внешний вид нашего приложения:
/* src/App.css */ .App { text-align: center; margin: 0 auto; max-width: 1000px; } .App-logo { height: 40vmin; pointer-events: none; } .App-header { margin: 0 auto; display: flex; flex-direction: column; align-items: center; justify-content: center; font-size: calc(10px + 2vmin); } li { list-style-type: none; } .post { margin-bottom: 4em; } .post h4 { font-size: 2rem; }
Существует также еще одна глобальная таблица стилей, называемая index.css, которые имеют более общие правила стиля.
В нем мы можем добавить некоторые дополнительные свойства для элемента тела, чтобы сделать наш фон темный и наш текст белый:
/* src/index.css */ body { background-color: #282c34; color: white; margin: 0; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
После добавления этих стилей у нас есть гораздо лучшее приложение:
Помните, что также очень легко добавить более продвинутые конфигурации CSS, такие как если вы хотите добавить модули CSS или SASS в ваше приложение Rection.
Более полезными ресурсами для стайлинга CSS включены в ваш файл Readme.md.
Шаг 10. Как построить приложение и опубликовать его
Как только мы будем довольны нашим приложением и готовы опубликовать его, мы можем построить его со следующей командой:
npm run build
Эта команда создаст оптимизированную продукцию для производства для нашего проекта и выводится, какие файлы он сгенерировал и насколько большой файл:
Compiled successfully. File sizes after gzip: 46.62 KB build/static/js/2.1500c654.chunk.js 1.59 KB build/static/js/3.8022f77f.chunk.js 1.17 KB build/static/js/runtime-main.86c7b7c2.js 649 B build/static/js/main.ef6580eb.chunk.js 430 B build/static/css/main.5ae9c609.chunk.css
Вывод исходит с веб-запада инструмента сборки.
Это помогает нам представить нам представление о размере наших файлов приложений, потому что размер наших файлов .js, в частности, может оказать большое влияние на производительность нашего приложения.
Каждый чан включает в себя уникальную строку или хеш, которая будет изменяться на каждой сборке, чтобы убедиться, что какое-либо новое развертывание не сохраняется (кэшируется) браузером.
Если у нас не было этого хэша-хеша для каждого из наших файлов, мы, вероятно, не могли видеть никаких изменений, которые мы сделали в наше приложение.
Наконец, мы можем запустить наш строгий проект React Project с помощью пакета NPM Подавать
Отказ
Это полезно для обнаружения любых ошибок, которые мы могли бы иметь с окончательной версией нашего проекта, прежде чем выдвигать в прямом эфире в Интернет.
Как и приложение Create-React-App, мы можем использовать NPX для запуска Подавать
Не устанавливая его глобально на нашем компьютере.
npx serve
Использование Подавать
Наше приложение начнется на другом порту разработки вместо 3000. В этом случае localhost: 5000.
И с этим у нас есть завершенное приложение React Reading для публикации в прямом эфире в Интернете в любой службе развертывания, таких как NetLify, страницы GitHub, или Heroku!
Наслаждайтесь этим постом? Присоединяйтесь к React BootCamp
React Bootcamp Занимает все, что вы должны знать о изучении реагирования и связки в один комплексный пакет, включая видео, обманывать, плюс специальные бонусы.
Присоединяйтесь к тысячам разработчиков, обучающихся, как стать React Pro в записи времени:
Нажмите здесь, чтобы быть уведомленным, когда он открывается