• Как хранить файлы в связке react -express mongo?

    Kentavr16
    @Kentavr16 Автор вопроса
    long cold winter
    Собственно в бд и хранить. На момент написания вопроса не понимал основ БД.
    Ответ написан
    Комментировать
  • Как заставить реакт правильно обновить компоненты?

    Kentavr16
    @Kentavr16 Автор вопроса
    long cold winter
    вытяжка из комментария -
    Best practice - спрятать токен в httpOnly куке, чтоб js не мог его прочесть и авторизовываться просто через куку в хеадере запроса.
    Можно вот тут почитать, к примеру https://habr.com/ru/company/ruvds/blog/512866/ (обратите внимание на комментарии)
    В любом случае Вам необходимо завести через реакт контекст (к примеру) стор, доступный в любом месте приложения. Оборачиваете всё приложение в контекст провайдер, на первой странице (или при загрузке приложения) запрашиваете какие-либо данные с бэка (данные пользователя например, если авторизация через куку, либо получаете jwt-токен в ответ на ввод логина) сохраняете в переменную в контексте (isAuth например), а в целевом компоненте навигации используете эту переменную как условие выводить одно или другое. Можно вызывать useEffect(() => {какой-то код},[имя переменной]), который будет дергаться только когда "имя переменной" обновится...
    Ответ написан
    Комментировать
  • Как перерендерить компонент при добавлении токена в localStorage?

    Kentavr16
    @Kentavr16 Автор вопроса
    long cold winter
    Отвечу сам себе - используя параметры УРЛ, контекст или редакс.
    Ответ написан
    Комментировать
  • Возможно ли вращать див вокруг уже вращающегося дива при помощи чистого css?

    Kentavr16
    @Kentavr16 Автор вопроса
    long cold winter
    Можно. Ответ с примером в комментариях.
    Ответ написан
    Комментировать
  • Применимы ли в реальном мире фронтенда порождающие паттерны программирования?

    Kentavr16
    @Kentavr16 Автор вопроса
    long cold winter
    Выбирая самое на мой взгляд существенное из комментариев -
    Применимы, но очень ограниченно, и смотря какой фреймворк используется у vue 3 и react кажется с 18 версии более удобно использовать хуки, превращать их в фабрики на мой взгляд бессмысленно лучше упороться в архитектуру разделенную на слои. Последний раз когда писал код подобными паттернами, была обертка над axios


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

    Kentavr16
    @Kentavr16 Автор вопроса
    long cold winter
    На момент написания вопроса ответ - никак. Нужно искать свое костыльное решение.
    Ответ написан
    Комментировать
  • В чем проблема подключения политики безопасности?

    Kentavr16
    @Kentavr16 Автор вопроса
    long cold winter
    Неправильное применение политик. Немного более развернутое объяснение в комментариях к вопросу.
    Ответ написан
    Комментировать
  • Почему в примере дублируются строки инициализации полей класса?

    Kentavr16
    @Kentavr16 Автор вопроса
    long cold winter
    Практического применения/причины такого синтаксиса не нашел. Скорее всего это просто "я так вижу" автора книги.
    Ответ написан
    Комментировать
  • Есть ли более изящные способы типизировать диапазон number?

    Kentavr16
    @Kentavr16 Автор вопроса
    long cold winter
    В общем, резюмируя переписку в комментариях - сколько-нибудь легко применимого способа такой типизации тайпскрипт на момент создания вопроса не предоставляет. Интересный (и мало того - работающий) вариант такой функциональности можно посмотреть в комментариях, спасибо Alexandroppolus за остроумную реализацию.
    Ответ написан
    Комментировать
  • Почему компонент не видит диспатч в redux/toolkit?

    Kentavr16
    @Kentavr16 Автор вопроса
    long cold winter
    Глупая ошибка - я просто не импортировал функцию которую нужно передавать в диспатч.
    Ответ написан
    Комментировать
  • Как привязать кнопку к панораме в a-frame?

    Kentavr16
    @Kentavr16
    long cold winter
    Если ты хочешь по-простому - добавь кнопку в html и зафиксируй ее при помощи position:absolute в стилях. что-то вроде
    //body html
    <button>Button</button>
    //css
            button{
                position: absolute;
                top: 20px;
                left: 20px;
            }


    Ты пытаешься взаимодействовать с webgl, при этом даже не почитав документацию по библиотеке. Я открыл библиотеку - и там в большом разделе Interactions написано:
    A common misbelief is that we can add a click event listener to an A-Frame entity and expect it to work by directly clicking on the entity with our mouse. In WebGL, we must provide the input and interaction that provides such click events. For example, A-Frame’s cursor component creates a synthetic click event on gaze using a raycaster. Or as another example, Mayo Tobita’s mouse-cursor component creates a synthetic click event when clicking directly on the entity using a raycaster.

    То есть если ты хочешь делать интерфейс "в объеме", прочитай доки. Значительно проще сделать по методу номер один.
    Ответ написан
    Комментировать
  • Как задать пропорциональное уменьшение такому блоку?

    Kentavr16
    @Kentavr16
    long cold winter
    Проблема в правильном описании высоты картинки. Вот пример. обрати внимание на .rooms__card-img . Я еще немного покрутил гап для того чтобы верстка стала на место, но это уже сам доставишь под свои нужды.
    Ответ написан
  • Какое движение в движке лучше использовать и почему?

    Kentavr16
    @Kentavr16
    long cold winter
    Если хочешь нормального отрабатывания столкновений и взаимодействия с текстурами, то только физика. При транслейт текстуры не учитываются, и получишь баги/проваливания и т.д. то есть если в игре есть физика - используешь физику, все логично
    Ответ написан
    Комментировать
  • Как изменить размер под родителя для картинки, вставленной через CSS?

    Kentavr16
    @Kentavr16
    long cold winter
    .card_2 {
      background-image: url('/images/card2.jpg');
      background-size: cover; /* работает */
    }
    Ответ написан
    2 комментария
  • Почему не переводит в римские цифры?

    Kentavr16
    @Kentavr16
    long cold winter
    потому что
    function roman(all){
    let result = ''
    numAll.map( (item, ind) =>{
    while (item <= all){
    result = result + romAll[ind];
    all = all - item;
    }
    });
    return result;
    };


    Если интересно именно почему - итерация по не тому массиву. Для подробностей проведи дебаггинг кода через отладку или же просто вставь
    function roman(all){
    let result = ' '
    romAll.map( (item, ind) =>{
       console.log(item <= all)//увидишь что для каждой итерации тут false,
    //а значит result останется пустой строкой
    while (item <= all){
    result = numAll[ind];
    all = all - item;
    }
    });
    
    return result;
    };
    Ответ написан
    Комментировать
  • Как разместить блоки div (см. фото)?

    Kentavr16
    @Kentavr16
    long cold winter
    Вот один из многих вариантов решения. Немного переписал под флекс, но если хочешь для контейнера оставить грид принцип тот же. и да, ты забыл проставить закрывающие теги для каждого дочернего элемента, поэтому работало через одно место. И цифру можно допозиционировать согласно твоих нужд.
    Ответ написан
    Комментировать
  • Почему вебсокет постоянно в состоянии подключения при вызове send?

    Kentavr16
    @Kentavr16
    long cold winter
    попробуй
    if(socketRef.current && socketRef.current.readyState === 1 && message)


    Много с сокетами в реакте не работал, но мне кажется что это плохой код. Компонент может ререндериться несколько раз, и сокет будет дергать на каждом ререндере. Хотя бы добавить проверку в первом эффекте что реф пустой.
    Ответ написан
    Комментировать
  • Вопросы по оформлению drag'n'drop ??

    Kentavr16
    @Kentavr16
    long cold winter
    Я сейчас изложу свое понимание - не сверялся со справочниками и никогда не заморачивался по этому поводу, так что могу ошибаться.
    У браузера есть встроенная логика обращения с перетаскиваемыми элементами. Потаскай любую катринку на любом сайте - она потащится. Так же как ссылки, к примеру. Для кастомизации такого рода событий есть event,preventDefault. Ты так отменяешь встроенное действие, а поверх события для этого действия пишешь свою логику. Вот пример. Сгенерирован нейросетью, мне лень дорабатывать. Но логика вполне ясна. Отменил - написал свое. Так что при перетягивании можешь делать абсолютно что угодно.
    П.С. - может есть способ переопределить и стандартное поведение браузера при перетаскивании, но я такого никогда не видел.
    Ответ написан
  • Вопрос по JS-задаче(перемещение элемента)?

    Kentavr16
    @Kentavr16
    long cold winter
    Цитируя MDN -
    Абсолютно позиционируемый элемент — это элемент, чьё вычисленное значение position является absolute или fixed. top, right, bottom и left (en-US) задают смещения от краёв содержащего блок элемента. (Содержащий блок является предком, относительно которого расположен элемент.)
    Объяснение твоего вопроса в последнем предложении. Более наглядно попытался объяснить здесь.
    Ответ написан
  • Почему на фронт не приходят куки из ларавел?

    Kentavr16
    @Kentavr16 Автор вопроса
    long cold winter
    Вопрос решился благодаря наводке Дмитрий и мозговому штурму szQocks. Куки не приходили из-за того, что в запросе на сервер я использовал как адрес IP - 127.0.0.1:8000/login. Браузер распознавал это как нарушение CORS для установки куки (подробнее в комментариях к вопросу). Осложнило решение проблемы то, что запрос распознается как успешный. Консоль браузера пуста, увидеть проблемное место можно только во вклатке "сеть" при выборе соответствующего запроса. В моем случае помогла смена URL запроса на localhost.
    Ответ написан
    Комментировать