Блог
08.02.2023
TypeScript — типизированное надмножество JavaScript, предназначенное для выявления ошибок на этапе компиляции. Код на TypeScript компилируется в код JavaScript, который выполняется в любом браузере. Эта надстройка вокруг основного языка JavaScript дает разработчикам статическую типизацию и приведение типов.
05.02.2023
Mailcow — это почтовый сервер который разворачивается в docker контейнере и требует минимум настройки. Maicow состоит из Dovecot, ClamAV, Solr, Oletools, Memcached, Redis, MariaDB, Unbound, PHP, Postfix, ACME, Nginx, Rspamd, SOGo, Netfilter. Для установки mailcow на сервере должен быть установлен docker + docker-compose.
03.12.2022
Утилита xargs позволяет выполнять команды с аргументами из стандартного ввода или из файла. Обычно используется в сочетании с другими командами через конвейер. Использование xargs позволяет передать вывод одной команды в качестве аргументов второй команды. Утилита разбивает вывод первой команды на отдельные строки…
15.10.2022
Будем дальше разрабатывать наше приложение списка задач. Потому как сейчас это трудно назвать приложением. И по ходу разработки продолжим знакомиться с RTK Query. Первым делом откажемся от использования хуков useQueryState и useQuerySubscription, а будем вместо них использовать хук useQuery.
02.10.2022
Продолжаем разговор про нормализацию и функцию createEntityAdapter. Чтобы закрепить полученные знания, напишем небольшое приложение. Это будет список постов блога с метками (тегами). Список постов получим с сервера, нормализуем данные для удобства работы, добавим возможность создавать, редактировать и удалять посты.
17.09.2022
Наше приложение списка дел работает синхронно. Каждый раз при отправке экшена — состояние немедленно обновляется. Давайте теперь создадим асинхронное приложение, которое будет использовать API JsonPlaceholder. При вызове асинхронного API, есть два ключевых момента времени — момент отправки запроса и момент получения ответа.
09.09.2022
Будем создавать приложение списка задач — почти такое же, как в первой части — но уже с использованием Redux. Пакет @reduxjs/toolkit позволяет работать с Redux по-новому. Пакет react-redux отвечает за взаимодействие компонентов с хранилищем. В четвертой части будем использовать Redux Toolkit и два хука из пакета react-redux.
02.09.2022
Будем создавать приложение списка задач — почти такое же, как в первой части — но уже с использованием Redux. Пакет redux позволяет работать с классическим Redux. Пакет react-redux обеспечивает взаимодействие компонентов с хранилищем. В третьей части будем использовать классический Redux и два хука из пакета react-redux.
26.08.2022
Будем создавать приложение списка задач — почти такое же, как в первой части — но уже с использованием Redux. Пакет redux позволяет работать с классическим Redux. Пакет react-redux обеспечивает взаимодействие компонентов с хранилищем. Во второй части будем использовать классический Redux и функцию connect из пакета react-redux.
22.08.2022
Механизм локального хранилища компонента, который поставляется вместе с React неудобен тем, что такое хранилище изолировано. Если разные независимые компоненты должны реагировать на событие — придётся либо передавать локальное состояние в виде пропсов дочерним компонентам, либо переносить локальное состояние вверх…