Задать вопрос
  • Как реализовать такой скролл в верстке?

    profesor08
    @profesor08 Куратор тега CSS
    https://scrollmagic.io/
    https://scrollmagic.io/examples/advanced/section_w...

    По сути горизонтальной прокрутки нет, и не должно быть, она не удобная. Но есть эффект перемещения блоков по горизонтали.
    Ответ написан
    Комментировать
  • Как назначить первоначальный стейт от апи Redux?

    profesor08
    @profesor08
    Есть несколько вариантов

    • Получить ответ от апи, потом инициализировать redux, потом сам react.
    • Инициализировать все данными по умолчанию. Организовать некоторый лоадер, чтоб показать заглушку. Инициализировать загрузку данных, потом через action обновить свое хранилище.
    Ответ написан
    3 комментария
  • Как такое сверстать?

    profesor08
    @profesor08 Куратор тега CSS
    Есть несколько вариантов:

    1. Взять эту svg и вставить в свой html, поправить номера и все. На этом вся верстка этого блока окончена. В svg должны быть и правильный пунктир, и тени и цвета.
    2. Попытаться сверстать кривое подобие на html и css. Результат как на картинке - недостижим. Примеры выше и вот этот (https://codepen.io/Profesor08/pen/XWedbmj), это прекрасно демонстрируют.


    Ответ написан
  • Как минимизировать имена классов css в сборке webpack?

    profesor08
    @profesor08
    Раз используешь sass, то твой код должен будет выглядеть как-то так:

    .my-super-puper-class {
      .the-most-puper-class {
        cursor: help;
      }
    }


    Или вот так, но вот так лучше не делать. Так как потом будет не удобно это дебажить или править.
    .my-super-puper-class {
      &__the-most-puper-class {
        cursor: help;
      }
    }
    Ответ написан
    Комментировать
  • Шаблонизатор/препроцессор для верстки в 2021?

    profesor08
    @profesor08
    Создаешь проект на реакте или solid, верстаешь себе. Когда нужен будет хтмл, то скриптом генерируешь его. Потом используешь где надо. Единственное неудобство в том, что если нужен какой-то интерактив, то не получится написать его в компонентах, а потом все это сбилдить в хтмл, а код отдельно. Придется заводить отдельный скрипт для всего интерактива.

    P.S. Нет никакого смысла верстать хтмл, потом растаскивать его на куски на бэкенде. Поддерживать такое очень сложно и долго. Если есть возможность использовать бэкенд в качестве апи, то не надо этим пренебрегать.
    Ответ написан
    Комментировать
  • А какие подводные камни у mouseenter и mouseelave на мобильных устройствах?

    profesor08
    @profesor08 Куратор тега JavaScript
    Их там нет.
    Ответ написан
    Комментировать
  • Как можно нормально смотреть стили элемента в браузере, если в них примеси переменных?

    profesor08
    @profesor08 Куратор тега CSS
    В девтулзах, в стилях отображается конкретно то, что прописано в .css файле или в теге <style>. Это, в первую очередь, важно для разработчиков сайта, чтоб понимать что будет на выходе. Во вторых, так как разработчики используют некую тему, то они не заморачиваются над кодами цветов, они просто используют --btn-color, не заморачиваясь над тем, какой там цвет кода. И браузер всеми силами, в меру своих возможностей, помогает им, предоставляя доступ к отладочной информации.

    Ты же, будучи посторонним и непричастным к разработке сайта, не имеешь доступа к исходникам и всей отладочной информации. Более того, тебе этого и не надо. И разработчикам это тоже не надо. А это значит, что придется пользовать тем, что есть:
    • наводишь на переменную и смотришь ее значение
    • кликаешь на переменную и переходишь к ее объявлению


    Если же такой расклад не устраивает, то есть еще варианты:
    • Связаться с разработчиками сайта и попросить их убрать css переменные и заменить их на коды цветов. Скорее всего будешь послан xD в том или ином виде, если вообще ответят.
    • Написать свое расширение для девтулзов, которое поставить финальные значения на место переменных.
    • Если написать не в силах, то заплати кому-то за разработку.
    • Если денег на себя жалко, то попроси кого-то написать такое расширение, авось повезет.
    • Еще можно попытаться упросить разработчиков браузера, но это не просто. Но если получится, то через пару лет xD добавится галочка.
    Ответ написан
    Комментировать
  • Как можно решить проблему с зависимостями node-re2 или node-gyp?

    profesor08
    @profesor08
    Так как тут электрон, то при установке билдятся нативные компоненты, библиотеки, бинарники под твою операционку. Чтоб все это заработало, придется поставить еще и питон, с++ sdk и все что попросит в ошибках в консоли. Увы, но электрон это не только js. А сами Js модули можно спокойно обновлять, апи в них редко меняется.
    Ответ написан
    Комментировать
  • Как настроить ImageMinimizerWebpackPlugin?

    profesor08
    @profesor08
    npm i imagemin-svgo --save-dev

    И так-то в документации есть конкретный пример того, как использовать. Какие-то свои модификации конфига - на свой страх и риск.

    Unknown plugin: imagemin-svgo

    Подобные ошибки вебпак пишет тогда, когда модуль не установлен, либо это вовсе не то, что ожидает вебпак.
    Ответ написан
    3 комментария
  • Как встроить на сайт сложную 3d анимацию?

    profesor08
    @profesor08
    Пример с анимацией по наведению курсора. Минусом будет тут то, что картинки надо объединить в одну длинную картинку, где все кадры следуют друг за другом по порядку. Онлайн сервисы по объединению картинок в спрайт есть.

    Ответ написан
    Комментировать
  • TypeScript как правильно убрать ошибки?

    profesor08
    @profesor08
    Неплохо бы указать с каким типом объекта будет работать твой ref.

    const selected = ref<HTMLInputElement[]>([])
    Ответ написан
    Комментировать
  • Есть ли подобные сервисы, как Flaticon с выгрузкой в CSS?

    profesor08
    @profesor08 Куратор тега CSS
    Выгружай в svg спрайт. Не надо трахаться с иконочными шрифтами, этот костыль больше не нужен.
    Ответ написан
    Комментировать
  • В каких массовых продуктах может / будет использован блокчейн?

    profesor08
    @profesor08
    Хранение истории/логов чего угодно. Их будет непросто подтасовать, при условии что у нас некая распределенная сеть и все друг друга перепроверяют. А если нет, то нет смысла усложнять себе жизнь.
    Ответ написан
    Комментировать
  • Как замкнуть переменную?

    profesor08
    @profesor08 Куратор тега JavaScript
    Оберни в функцию и вызови ее.
    Ответ написан
    Комментировать
  • Пропадают бекслеши в переменной JS|, что делать?

    profesor08
    @profesor08 Куратор тега JavaScript
    Код ниже выводит как надо, а это значит, что у тебя, в переменной вовсе не то, что кажется.

    <?php
    
    $post1['film_url'] = "seasons/Фильм3/videos/1.mp4";
    
    ?>
    
    var videoPlayer = document.getElementById('video-player');
    
    videoPlayer.src = "<?= $post1['film_url'] ?>";
    Ответ написан
    3 комментария
  • Как убрать костыли из формы поиска bootstrap?

    profesor08
    @profesor08 Куратор тега CSS
    Комментировать
  • Почему не работает интернет на новом компе?

    profesor08
    @profesor08
    Когда у меня не было роутера, то мне приходилось вписывать все необходимые адреса в настройках сетевого адаптера. Так что посмотри что прописано на старом компе, или посмотри какие данные прилагаются к контракту и впиши их.
    Ответ написан
    Комментировать
  • Как сделать след от двигателя в Three.js?

    profesor08
    @profesor08 Куратор тега JavaScript
    В зависимости от скорости меняй прозрачность/ширину текстурки с длинным выхлопом.
    Ответ написан
    3 комментария
  • Как проще всего авторизовывать человека в мобильном приложении с помощью REST-API?

    profesor08
    @profesor08
    На андроид или иос есть учетная запись. Авторизуй через нее. Если юзер так не хочет или учетки нет (пользоваться нормально телефоном будет не просто), то по емейлу и паролю, или по номеру телефона и паролю. При регистрации прислать смс/емейл с кодом подтверждения. Дальнейший вход будет осуществляться в зависимости от способа регистрации: в один клик по учетке, емейл/телефон + пароль.

    Если полагаться на смс, то можно лишиться пользователей. СМС может идти пару секунд, минут, часов или просто не прийти, или прийти с опозданием сразу 10 раз в любом порядке, так как юзер будет тыкать кнопку снова и снова пока не надоест и не удалит приложение.
    Ответ написан
    Комментировать
  • Async await правильно использование?

    profesor08
    @profesor08 Куратор тега JavaScript
    Именно тут await ждет когда отработает колбек, а не запрос. Если dispatch не промис, то await перед ним тоже не нужен. Так-же блок try/catch никак не отреагирует на исключения в промисе или колбеке. Грубо говоря код делает вовсе не то, что тебе от него хочется.

    Если надо отлавливать исключения, то это делать надо там, где они вылетают. А это запрос и его обработка. Добавление слушателя исключение скорей всего не выбросит, если там не грубый баг. А исключение при вызове колбека так не отловить, так как вызовется он когда-то потом, когда этот код уже отработает.

    socket.on("exit", async () => {
      try {
        const response = await axios.post(
          process.env.REACT_APP_API_URL + "api/games/remove",
          {
            game: MATCH_ID,
            team,
          },
        );
    
        await dispatch({
          type: UPDATE_GAME,
          game: response.data.game,
          team_a: response.data.team_a,
          team_b: response.data.team_b,
        });
    
        await dispatch({
          type: ACCEPT,
          accepts: false,
        });
      } catch (err) {
        console.error(err);
      }
    });
    Ответ написан
    Комментировать