Рубрики
Без рубрики

Создайте свои живые часы в реальном времени и дата в «Regive.js», без кансистики 3-го вечеринки

Вы работали над проектом, и вы хотели отобразить дату и время жить, может быть, в вашей навкаре или … Помечено с помощью реакции, JavaScript.

Вы работали над проектом, и вы хотели показать дату и время жить, может быть, на вашей навабре или что-то в этом роде?

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

Но кому нужны часы, есть один на каждом ПК и мобильном телефоне, верно? Ну иногда веб-сайты любят себе сами правильно

Так что давайте просто попадаем в это

Мы начнем с помощью клонирования небольшой демо, я уже создал для вас

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

Первый шаг: клонировать репо в своем каталоге

Git Clone https://github.com/ahmedsarhan/live-watch.git.git.git.git.git.git

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

import './App.css';

import { ReactComponent as ClockIcon } from './icons/clock.svg';
import { ReactComponent as CalenderIcon } from './icons/calendar.svg';

function App() {
    return (
        

date

time

); } export default App;

Как вы можете видеть базовый компонент функционального приложения RACT с помощью двух значков и стилей, которые нам нужно импортировать и применять

В этой статье мы изменим эти два P Теги с датой и временем реального времени, используя только js и реагировать крюки

Второй шаг: перейти к каталогу проекта

CD Live-Watch

Третий шаг: Установите пакеты NPM REPO в вашем каталоге

NPM i

Четвертый шаг: запустить приложение

Этот шаг должен открыть ваш localhost на порт 3000 по умолчанию

Ваш сайт должен выглядеть так

Теперь давайте добраться до работы

Прежде всего, обязательно импортировать Реагировать и оба Usestate, UseScect Крючки в верхней части вашего компонента приложений со следующей строкой кода:

Импорт реагировать, {stestate, use exeffect} от «реагирования»;

Теперь мы собираемся сделать магию

Создайте состояние вашего приложения

Мы собираемся сделать Datestate, используя USESTATE крючка как следует следующим образом: const [datestate, (Новая дата ()) ;

Теперь по умолчанию начальное значение Datestate будет прямо сейчас, но он не будет обновлять, если пользователь не перезагружает страницу, поэтому нам нужно работать с этим … Но сначала давайте покажем дату пользователю

Отображение даты и времени

Как вы можете видеть, что все пользователь может видеть, это 📆 дата 🕒 часы

Но не будет лучше показать пользователю настоящую дату и время;

Так что есть много способов сделать это, но так как это небольшое приложение, которое я хотел бы сделать все это в одном штате

{' '} {dateState.toLocaleDateString('en-GB', { day: 'numeric', month: 'short', year: 'numeric', })}

{dateState.toLocaleString('en-US', { hour: 'numeric', minute: 'numeric', hour12: true, })}

Так что это то, как ваше приложение должно выглядеть прямо сейчас Как вы можете видеть, используя Tolocalstring JavaScript Метод который является стандартным встроенным объектом в JavaScript, мы можем изменить дату этого момента, чтобы просмотреть его различными способами

Как вы можете видеть в первом Тег абзаца Я использую Толокалинг Чтобы просмотреть дату сегодня в формате D MMM YYYY Что должно показать на дату этой статьи 5 июня 2021

Во втором абзаце я показываю время этого момента в формате h: мм a Используя 12-часовую систему

Конечно, есть разнообразные способы отображения одинаковой даты, и вы можете играть с Толкалстринг Метод больше и найти немного больше.

Теперь мы сделали его двумя третями способа, пользователь может увидеть время и дату прямо сейчас, но я немного не совсем Сейчас Больше, я бы поспорил, что это минута или два поздно от ваших устройств, если вы не обновляете страницу.

Это приводит нас к нашему последнему шагу

Делать наши часы в режиме реального времени

На этом этапе мы будем использовать второй крюк, который мы импортировали в начале этой статьи; Useffect крюк;

Мы сделаем магию с одной простой строкой кода:

    useEffect(() => {
      setInterval(() => setDateState(new Date()), 30000);
    }, []);

Теперь в этом использовании мы обновляем дату каждые 30000 миллисекундров, что означает, что Datestate Usestate Hook будет обновляться каждые полминуты 30 секунд И наше приложение подрезут дому соответственно

Теперь, если вы посмотрите на ваше приложение и дождитесь прохождения одной минуты, вы должны увидеть часы плавно обновляются так же, как ваши нативные устройства устройства. Это может быть долго ждать, но оно того стоит 😂 🔥

Вывод

Теперь ваш код компонента приложения должен выглядеть что-то подобное

import React, { useState, useEffect } from 'react';
import './App.css';
import { ReactComponent as ClockIcon } from './icons/clock.svg';
import { ReactComponent as CalenderIcon } from './icons/calendar.svg';

function App() {
    const [dateState, setDateState] = useState(new Date());
    useEffect(() => {
           setInterval(() => setDateState(new Date()), 30000);
    }, []);
    return (
        

{' '} {dateState.toLocaleDateString('en-GB', { day: 'numeric', month: 'short', year: 'numeric', })}

{dateState.toLocaleString('en-US', { hour: 'numeric', minute: 'numeric', hour12: true, })}

); } export default App;

Вы также можете сравнить свой код до окончательного результата шахты через Окончательная филиал На том же Github repo.

Оригинал: “https://dev.to/ahmedsarhan/create-your-live-watch-and-date-in-react-js-no-3rd-party-hassle-1oa4”