WebCraft - ремесло веб разработки
6.47K subscribers
1.72K photos
258 videos
2 files
231 links
Интересуешься php , js , css , html , Laravel , Vue ? Этот канал для тебя

Админ, сотрудничество, реклама: @seniorFrontPromo, @maria_seniorfront
Менеджер по рекламе: @Spiral_Yuri

Купить рекламу: https://telega.in/c/web_craft
Download Telegram
This media is not supported in your browser
VIEW IN TELEGRAM
CSS Switch Day and Night - Cat

Анимированный переключатель с кошкой на CSS.

👉 @web_craft | #frontend
Какой темой пользуетесь?

👍 - Тёмной.

❤️ - Светлой.

👉 @web_craft | #юмор
Собеседования в IT как драйвер профессионального роста

Статья рассказывает о том, как регулярное участие в собеседованиях способствует профессиональному развитию в IT. Автор подчеркивает, что собеседования помогают не только улучшить технические навыки, развить умение самопрезентации , но и получить ценные отзывы.

👉 @web_craft | #собес
Работа команды composer check-platform-reqs

Что происходит, если команда composer check-platform-reqs обнаруживает несоответствие?

Забыли? Вернитесь к посту от 23.06.2024.

👉 @web_craft | #php
Реагирования на изменения сетевого состояния

Какое событие генерируется объектом window, когда соединение с сетью восстановлено?

Если забыли, то вернитесь к посту от 25.06.2024.

👉 @web_craft | #frontend
Какое событие генерируется объектом window, когда соединение с сетью восстановлено?
Anonymous Quiz
36%
online;
13%
networkUp;
23%
reconnect;
28%
connectionRestored.
Упрощение добавления нескольких полей в таблицу

Если вам нужно добавить несколько полей в базу данных после определенного поля, сгруппируйте их в одном колбэке, используя метод $table->after(). Это обеспечивает более чистый и логичный код.

Пример:
// Вместо этого:
Schema::table('users', function (Blueprint $table) {
$table->string('phone')->nullable()->after('password');
$table->string('github')->nullable()->after('phone');
$table->string('twitter')->nullable()->after('github');
});

// Вы можете сделать это:
Schema::table('users', function (Blueprint $table) {
$table->after('password', function (Blueprint $table) {
$table->string('phone')->nullable();
$table->string('github')->nullable();
$table->string('twitter')->nullable();
});
});


Этот способ позволяет сразу указать все новые поля, которые должны быть добавлены после уже существующего, избегая многократного использования метода after().

👉 @web_craft | #laravel
Управление промисами в JavaScript

promise.withResolvers() — удобный метод в JavaScript для создания промиса и доступа к его resolve и reject. Это упрощает управление промисами.

Пример:
const { promise, resolve, reject } = promise.withResolvers();

promise.then(value => {
console.log('Промис выполнен с:', value);
}).catch(error => {
console.error('Промис отклонен с ошибкой:', error);
});

// Разрешение промиса
setTimeout(() => resolve('Успех!'), 2000);

// или отклонение промиса
// setTimeout(() => reject('Ошибка!'), 2000);

Реализация promise.withResolvers():

function promiseWithResolvers() {
let resolve, reject;
const promise = new Promise((res, rej) => {
resolve = res;
reject = rej;
});
return { promise, resolve, reject };
}


Этот метод полезен для управления асинхронными операциями из внешнего контекста.

👉 @web_craft | #frontend
Профилирование PHP (Laravel) приложений с xhprof. Учимся искать ботлнеки

Статья описывает, как профилировать PHP (Laravel) приложения с помощью xhprof для выявления узких мест (bottlenecks). Автор объясняет, что такое профилировщик и как использовать инструменты xhprof, Buggregator и другие для анализа и оптимизации производительности кода.

👉 @web_craft | #php
Объединение веб-приложений и нативных приложений с помощью неизвестных JavaScript API

Статья описывает четыре малоизвестных JavaScript API, которые помогают сблизить возможности веб-приложений с нативными. API Web Share позволяет веб-приложениям делиться контентом с другими приложениями на устройстве пользователя. Статья включает примеры и код для внедрения этих API, показывая, как они могут улучшить взаимодействие пользователей с веб-приложениями.

👉 @web_craft | #frontend
This media is not supported in your browser
VIEW IN TELEGRAM
Neuro Noise

Интерактивный фон реализованный с использованием GLSL.

👉 @web_craft | #frontend
Вам помогло Лего?

♥️ - Да.

👍 - У меня такого не было.

👉 @web_craft | #юмор
Конверсия 1 собеседование на 500 откликов на западном рынке. Как так вышло и чем грозит?

Статья рассматривает текущую кризисную ситуацию на рынке труда в IT-секторе на Западе. Автор анализирует причины резкого снижения конверсии откликов на вакансии в успешные собеседования, такие как экономический спад, высокая конкуренция, автоматизированная фильтрация резюме и рост удаленной работы. Также обсуждаются последствия для соискателей и даются советы по адаптации к новым условиям.

👉 @web_craft | #собес
Использование User-Agent

Для чего задается собственный User-Agent при использовании сторонних API?

Забыли? Вернитесь к посту от 01.07.2024.

👉 @web_craft | #laravel
Верстаешь?

Оцени 7 причин пройти наш бесплатный интенсив по Frontend-разработке:

1. Ты сверстаешь веб-сайт на HTML + CSS;
2. Оживишь страницу с помощью JavaScript;
3. Используешь фронтенд-фреймворк Angular;
4. Подключишь Backend и загрузишь сайт на хостинг;
5. Получишь советы по доработке своего проекта;
6. Добавишь в портфолио 1 качественный проект;
7. Получишь в подарок чек-лист «45 мест для поиска работы».

А главное, ты проведёшь 7 дней в приятной компании Fullstack-разработчика с 10-летним стажем – Романа Чернова.

👉 Проскочить на интенсив бесплатно

Начинаем уже завтра.
Использование хука eloquent.retrieved в Laravel

Хук eloquent.retrieved в Laravel используется для выполнения определенных действий сразу после извлечения модели из базы данных.

Как это работает:

1. Метод Event::listen используется для прослушивания события eloquent.retrieved для модели User.
2. Анонимная функция, которая принимает экземпляр модели User и выполняет необходимые действия с её данными.

Это позволяет выполнять любые действия с данными модели сразу после их извлечения.

Рассмотрим пример использования хука eloquent.retrieved для автоматического форматирования поля created_at после извлечения модели User:

use App\Models\User;
use Illuminate\Support\Facades\Event;

Event::listen('eloquent.retrieved: App\Models\User', function (User $user) {
$user->created_at = $user->created_at->format('d-m-Y H:i:s');
});

В этом примере, каждый раз при извлечении модели User, поле created_at будет автоматически форматироваться в формат день-месяц-год часы:минуты:секунды.

👉 @web_craft | #laravel