Так, звісно, ж без додаткової валідації контенту можна «віддати» в пошуковик контент низької якості. Тому я би рекомендував також додатково валідувати і редагувати створений контент
Дякую за коментар! Це мій авторський термін, сподіваюсь вам сподобалось :)
Дякую за коментар! Завдяки додатковому пруфрідінгу та редагування нашим контент райтером, ми переконуємся в тому, що створюємо якісний контент для користувачів нашого продукту
Дякую за коментар! Сподіваюсь, знайшли щось корисне для себе
Дякую за коментар. Розумію вашу обережність, ми теж мали такий острах, проте в нашому підході з такими проблемами ми не стикались.
Дякую за ваш коментар. Так, погоджуюсь, що іноді згенерований контент залишає бажати кращого. Проте, вдосконалючи промпт, розбивши генерацію на окремі модулі і додатковий пруф рідінг може принести бажаний результат. Ми зайшли в топ-5 США у своїй ніші за певними ключами.
Я розумію, що ви маєте на увазі. Якщо просто генерувати контент за допомогою АІ та публікувати його у веб — це не найкраще, що можна зробити для високоякісного контенту та користувачів. Тому ми додатково надсилаємо такий контент на перевірку та пруфрідінг нашому контент райтеру, як я і зазначав вище у статті. Але попри все виграємо у часі та коштах, які б ішли на написання контенту про наш продукт.
Окрім цього, варто також звернути увагу на тип контенту, який ви генеруєте. Адже є різниця, наприклад, в генерації новин за допомогою ChatGPT і прикладів речень з англійської чи іспанської мови.
Włodzimierz, дякую за вашу активність! Скажіть, будь ласка, чому саме вам не сподобався матеріал?
Vasyl, мені, як випускнику Mate Academy (part time Front-End), деякі з ваших висловлювань, які є швидше за все гіпотезами, видаються такими, що не відповідають дійсності. Я завершив навчання в університеті за спеціальністю «Англійська Філологія», що є зовсім нетехнічною спеціальністю. У Mate Academy я завершив навчання весною 2023 року за
Ви також згадали, що статистики по найму на парт-таймі не ведуть. Цю інформацію можна якось перевірити? Коли я повідомив про свій найм, то я заповнював анкету в Mate Academy з деталями найму, що швидше за все таки і було для внутрішньої аналітики і розуміння розкладу по працевлаштуванню студентів напрямку парт-тайм.
Так, я би використовував модульний підхід або headless React Components, що, звісно, покращить структурованість та зрозумілість коду
Дякую за ваш коментар і круто, що у вас є така жага до знань. Ні, на жаль, поки не розглядаю співавторства.
Дякую за ваш коментар і що долучилися до розгляду хуків! Ви праві, useFormStatus в React 19 нативніше викликати у компонентах усередині елементу form.
Приклад із dev.to/...rmstatus-in-react-19-3khh
import { useFormStatus } from "react-dom";
const Register = () => {
const { pending } = useFormStatus();
return (
<button className="border border-black">
{pending ? "Loading" : "Register"}
</button>
);
};
export default function Home() {
const formAction = async (formData: FormData) => {
"use server";
await new Promise((resolve) => {
setTimeout(resolve, 1000);
}); //intentionally delay time
console.log(formData.get("firstName"));
};
return (
<form action={formAction}>
<div>
<label>Name:</label>
<input type="text" name="firstName" />
</div>
<Register />
</form>
);
}
Дякую, що поділилися своїм напрацюванням кастомного хука. Вцілому використання `AbortController` для уникнення «витоків» запитів, які лишаються активними після того як компонент пропадає з сторінки — це, на мій погляд, гарна практика.
Для покращення оптимізації я би ще додатково огорнув би fetchFunction у хук useCallback.
const fetchFunction = useCallback(async (signal) => {
const response = await fetch('https://api.example.com/data', { signal });
if (!response.ok) {
throw new Error('Network response was not ok');
}
return response.json();
}, []);
Vladyslav, дуже дякую вам за ваш коментар і слушне зауваження. В наступних своїх статтях буду використовувати вашу пораду та залишати посилання. Частина коду із useServerComponent — це кастомний хук, який я взяв зі свого проекту, перепрошую, якщо він міг збити вас з пантелику. Ще раз дякую вам!
Ігоре, дякую за ваш коментар. Не знаю чи пройшов я той етап безжальної реальності про яку ви говорите, проте, можливо, новий реліз вирішить деякі з таких гріхів. Проте я не виключаю того, що все стане безпроблемно, коли ви будете використовувати нову версію React.
У React diamond dependencies можна вирішити за допомогою обʼєднання стейтів у один контекст або useReducer. Але у вирішенні таких комплексних задачах я би віддав перевагу Redux.
Так, use context у поєднанні з useReducer можна використати для керування станами в React-застосунках.
Всьому свій час)