Warning: preg_grep(): Compilation failed: quantifier does not follow a repeatable item at offset 146 in /var/www/tg-me/post.php on line 75
Библиотека фронтендера | Frontend, JS, JavaScript, React.js, Angular.js, Vue.js | Telegram Webview: frontendproglib/6344 -
Telegram Group & Telegram Channel
🎮 Создание пользовательского хука useFormStatus

Проблема: повторное использование логики состояния формы может привести к дублированию кода и усложнению поддержки.

Решение: в книге «Learn React Hooks, 2nd Edition» автор предлагает создать пользовательский хук useFormStatus для инкапсуляции логики состояния формы, что позволяет повторно использовать её в разных компонентах.

Пример кода:


import { useState } from 'react';

function useFormStatus() {
const [isSubmitting, setIsSubmitting] = useState(false);
const [error, setError] = useState(null);

const submit = async (action) => {
setIsSubmitting(true);
try {
await action();
} catch (err) {
setError(err);
} finally {
setIsSubmitting(false);
}
};

return { isSubmitting, error, submit };
}

function LoginForm() {
const { isSubmitting, error, submit } = useFormStatus();

const handleSubmit = () => {
submit(async () => {
// Асинхронная отправка данных
});
};

return (
<form onSubmit={handleSubmit}>
<button type="submit" disabled={isSubmitting}>
{isSubmitting ? 'Submitting...' : 'Submit'}
</button>
{error && <p>{error.message}</p>}
</form>
);
}


Преимущества:

— Инкапсуляция логики состояния формы.
— Повторное использование кода.
— Упрощение компонентов форм.

➡️ Еще больше полезных книг — в нашем канале @progbook

🐸 Библиотека фронтендера

#буст
Please open Telegram to view this post
VIEW IN TELEGRAM
4🔥2



tg-me.com/frontendproglib/6344
Create:
Last Update:

🎮 Создание пользовательского хука useFormStatus

Проблема: повторное использование логики состояния формы может привести к дублированию кода и усложнению поддержки.

Решение: в книге «Learn React Hooks, 2nd Edition» автор предлагает создать пользовательский хук useFormStatus для инкапсуляции логики состояния формы, что позволяет повторно использовать её в разных компонентах.

Пример кода:


import { useState } from 'react';

function useFormStatus() {
const [isSubmitting, setIsSubmitting] = useState(false);
const [error, setError] = useState(null);

const submit = async (action) => {
setIsSubmitting(true);
try {
await action();
} catch (err) {
setError(err);
} finally {
setIsSubmitting(false);
}
};

return { isSubmitting, error, submit };
}

function LoginForm() {
const { isSubmitting, error, submit } = useFormStatus();

const handleSubmit = () => {
submit(async () => {
// Асинхронная отправка данных
});
};

return (
<form onSubmit={handleSubmit}>
<button type="submit" disabled={isSubmitting}>
{isSubmitting ? 'Submitting...' : 'Submit'}
</button>
{error && <p>{error.message}</p>}
</form>
);
}


Преимущества:

— Инкапсуляция логики состояния формы.
— Повторное использование кода.
— Упрощение компонентов форм.

➡️ Еще больше полезных книг — в нашем канале @progbook

🐸 Библиотека фронтендера

#буст

BY Библиотека фронтендера | Frontend, JS, JavaScript, React.js, Angular.js, Vue.js


Warning: Undefined variable $i in /var/www/tg-me/post.php on line 283

Share with your friend now:
tg-me.com/frontendproglib/6344

View MORE
Open in Telegram


Библиотека фронтендера | Frontend JS JavaScript React js Angular js Vue js Telegram | DID YOU KNOW?

Date: |

How to Use Bitcoin?

n the U.S. people generally use Bitcoin as an alternative investment, helping diversify a portfolio apart from stocks and bonds. You can also use Bitcoin to make purchases, but the number of vendors that accept the cryptocurrency is still limited. Big companies that accept Bitcoin include Overstock, AT&T and Twitch. You may also find that some small local retailers or certain websites take Bitcoin, but you’ll have to do some digging. That said, PayPal has announced that it will enable cryptocurrency as a funding source for purchases this year, financing purchases by automatically converting crypto holdings to fiat currency for users. “They have 346 million users and they’re connected to 26 million merchants,” says Spencer Montgomery, founder of Uinta Crypto Consulting. “It’s huge.”

What is Telegram?

Telegram is a cloud-based instant messaging service that has been making rounds as a popular option for those who wish to keep their messages secure. Telegram boasts a collection of different features, but it’s best known for its ability to secure messages and media by encrypting them during transit; this prevents third-parties from snooping on messages easily. Let’s take a look at what Telegram can do and why you might want to use it.

Библиотека фронтендера | Frontend JS JavaScript React js Angular js Vue js from us


Telegram Библиотека фронтендера | Frontend, JS, JavaScript, React.js, Angular.js, Vue.js
FROM USA