Это будет последовательно, и эта первая часть посвящена тому, как настроить проект React с Parcel и как интегрировать в него Firebase.

ПРЕДПОСЫЛКИ

  • Базовые знания о React.

Может помочь создание небольшого проекта, отметьте здесь.

  • Dummy React Project, созданный с помощью Parcel (инструкции ниже)
  • Глубокая любовь к формам (мы будем их часто использовать)
  • Горящее пламя внутри вас, чтобы изучить Firebase (каламбур)
  • Хороший редактор кода (желательно Visual Studio Code)

Чему вы научитесь

  • Настройка Firebase в вашем проекте
  • Функции CRUD с использованием Firebase
  • Маршрутизация с помощью Reach-маршрутизатора

Начиная

Если вы когда-нибудь окажетесь в положении полного стека и вам понадобится простой бэкенд после выполнения задач внешнего интерфейса. Уверяю вас, что лучшее решение — собственная FIREBASE от Google. Теперь, какой лучший инструмент для его интеграции, чем основная среда Frontend, React

Мы собираемся инициализировать наш проект React с помощью сборщика Parcel.

Вы можете найти альтернативный способ сделать это здесь

Приложение React With Parcel

Но давайте посмотрим, как это можно сделать в этой статье.

Создайте приложение React с Parcel.js

Создайте папку, откройте ее в редакторе кода, а затем в каталоге проекта выполните команду (ы)

npm init -y
  1. При желании вы можете инициализировать Git, чтобы вы могли загрузить его позже, используя
git init

Это инициализирует package.json, и вы выбираете y для да

2. Установите React и react-dom, используя

npm install — save react react-dom

3. Установите Babel и пакет-связку с помощью

npm install — save-dev @babel/core @babel/plugin-proposal-class-properties @babel/preset-env @babel/preset-react parcel-bundler

4. Установите реагирующий горячий загрузчик и сохраните его как зависимость, используя

npm i -D react-hot-loader

5. В каталоге проекта создайте файл с именем «.babelrc» и добавьте

{
  “presets”: [
      “@babel/env”,
      “@babel/react”
      ],
“plugins”: [
      “react-hot-loader/babel”,
      [“@babel/transform-runtime”]
          ]
}

6. Создайте новую папку с именем src и создайте в ней файл index.js, добавьте:

import React from ‘react’
import ReactDOM from ‘react-dom’
import App from ‘Components/App’
if (module.hot) {
    module.hot.accept()
}
ReactDOM.render(
         <div>
            <App />
        </div >, document.getElementById(‘root’))
ReactDOM.render(<App />, document.getElementById(‘root’))

7. Создайте файл HTML с синтаксисом:

<!DOCTYPE html>
<html lang=”en”>
<head>
<meta charset=”UTF-8" />
<meta name=”viewport” content=”width=device-width, initial-scale=1.0" />
<meta http-equiv=”X-UA-Compatible” content=”ie=edge” />
<title>React with Parcel.js</title>
</head>
<body>
   <h1>Hello, World!</h1>
<div id=”root”></div>
</body>
</html>

8. Найдите package.json и добавьте в него:

“scripts”: {
    “start”: “parcel index.html”
}

9. Создайте папку с именем Components и создайте в ней файл с именем App.jsx. Если вы знакомы с реакцией, вы знаете, что это основное приложение для любых подкомпонентов, которые мы создадим, а также для маршрутизации. Если вы не знакомы с React, возможно, вы захотите наверстать упущенное.

Не стесняйтесь проектировать его так, как вам нравится, но, поскольку это функциональный компонент, он будет выглядеть так:

import React, {useEffect, useState} from ‘react’
export default function App(props) {
       return (
            <div>
             # add code or classes here
            </div>
          )
}

Запустите npm run start и приступим.

Целевая страница

Любая настройка, которую вы выберете, в порядке, но создайте фиктивные компоненты, которые будут хранить данные, которые вы сохраняете в своей базе данных Firebase.

Совет. Создайте для этого компонент, а затем вызовите его в своем App.js, так как в этом вся прелесть React, Components!

Я использую Bootstrap для этого проекта, чтобы узнать, как правильно настроить Bootstrap в React, нажмите ниже:

Использование Bootstrap с ReactJs (правильный путь)

Настройка Firebase

Прежде чем мы сможем сделать что-либо еще, мы должны настроить Firebase в нашем проекте.

Если у вас нет учетной записи Firebase, первым шагом будет создание учетной записи Firebase здесь:

Консоль Firebase

Вам будет предложено зарегистрироваться / войти, после чего вы увидите свою панель инструментов.

Что-то похожее на изображение выше.

Затем вы можете инициализировать новый проект; выберите подходящее имя, а затем включите аналитику (в данном случае необязательно).

И за несколько секунд!

Слева от недавно найденной панели инструментов откройте боковую навигацию и нажмите Cloud Firestore.

Примечание. Знаете ли вы, что у меня есть учебник, который поможет вам создать подобную боковую навигацию в React? Нажмите здесь, чтобы узнать, как это сделать:

Как сделать боковую панель навигации в ReactJS

Нажмите «Создать базу данных», запустите ее в тестовом режиме, поскольку наше приложение еще не готово к работе, а затем выберите любое местоположение, наиболее предпочтительно оставив выбор по умолчанию.

Наконец, мы переходим к настройкам проекта, щелкнув значок шестеренки на панели навигации (вверху справа), а на вкладке «Общие» прокрутите вниз и щелкните значок, как показано ниже.

Затем это ведет на эту страницу:

Назовите свое приложение и пока не нажимайте Firebase Hosting, мы настроим его позже. Зарегистрируйте свое приложение, и SDK — это Firebase комплекта разработки, который мы можем использовать для установки firebase. Нашим предпочтительным вариантом будет:

Запустите npm install firebase, затем

Затем мы идем в корень нашей папки и создаем файл с именем firebase.js и вставляем его

import “regenerator-runtime/runtime”
import { initializeApp } from “firebase/app”;
import { getFirestore } from “@firebase/firestore”;
import React, { useState, useEffect } from ‘react’
// Authentication
const firebaseConfig = {
    apiKey: “xxxxxxxxxxxxxxxxxxxxxxxxxxx-xxxx-xxx-xx”,
    authDomain: “xxxxxxxxxxxxxxxxxxxxxxxx.firebaseapp.com”,
    projectId: “xxxxxxxxxxxxxxxxx-xxxxxx”,
    storageBucket: “xxxx-xxxxxxxxxxx-xxxxx.xxxxxx.com”,
    messagingSenderId: “xxxxxxxxxxxx”,
    appId: “1:104449724706:web:xxxxxxxxxxxxxxxxx”,
    measurementId: “x-xxxxxxxxxxx”
}
// Initialize Firebase
const app = initializeApp(firebaseConfig);
const auth = getAuth()
export default getFirestore()

Замените объект firebaseConfig на тот, который предлагает вам firebase, потому что он уникален для каждого проекта.

В первой строке я продолжал сталкиваться с ошибкой времени выполнения регенератора, поэтому установка пакета и его импорт, похоже, решают проблему, поэтому установите его, используя:

npm I regenerator-runtime

И с этим мы все готовы начать выполнять операции CRUD в нашем приложении Firebase.

Если у вас возникнут какие-либо вопросы или проблемы, с которыми вы столкнетесь, я буду рад помочь вам их исправить, поэтому оставляйте их в комментариях! Давайте отлаживать.

Если вы успешно пройдете это без заминок, то сможете переходить к следующей части.