Задать вопрос
  • Как в NextJS можно работать со стейт менеджером для хранения токена авторизации?

    szQocks
    @szQocks
    MishaXXL, если стор без ssr, то что-то типа этого

    import { cookies } from 'next/headers'
    import { ClientUserProvider} from '...';
    
    const getUser = async () => {
      return fetch(`${process.env.NEXT_PUBLIC_API_URL}/api/refresh`, {
        next: { revalidate: 0 },
        method: "GET",
        headers: { Cookie: cookies().toString() },
      })
      .then(res => res.json())
      .catch(e => {
        console.log(e);
        return { user: null };
      })
    }
    
    export default async function RootLayout({ children }) {
      const user = await getUser();
    
      return (
        <html lang="en">
          <body>
            <ClientUserProvider INIT_STATE={ user }>
              {children}
            </ClientUserProvider>
          </body>
        </html>
      )
    }


    всё что попадает в children, там могут быть как серверные так и клиентские компоненты
    в примере подразумевается что сам ClientUserProvider - это клиентский компонент в котором в самом начале написано "use client"

    вообще до этого мог бы и сам додуматься, проштрудировав всю документацию как в реакте так и в нексте

    а этот RootLayout , должен находиться в папке app а сам файл с названием layout.js или ts если пишешь на ts

    так же в getUser можно проверять а есть ли кука, и нужно ли отправлять запрос или нет, в принципе если куки нет, то можно сразу возвращать { user: null }, в общем включай голову
  • Как в NextJS можно работать со стейт менеджером для хранения токена авторизации?

    szQocks
    @szQocks
    не нужно хранить в сторе токен для авторизации, кто вам сказал что нужно это делать ? что за идиота на ютубе вы там смотрите, уже 5 человек задаёт этот вопрос с токеном в сторе, за последние пару мес
  • Есть ли необходимость в битых файлах созданных при сборке Webpack?

    szQocks
    @szQocks
    файлов svg/png с подобным содержимым не должно быть, криво сборщик настроен
  • Как правильно в api реализовать систему уведомлений на сайт и в тг бота?

    szQocks
    @szQocks
    отправлялось на сайт пользователю
    как вариант, с клиента через каждые N секунд отправлять запрос на получение уведомлений

    и в телеграм бота
    - как вариант можешь отправить запрос на сервер с ботом, а сам тг бот, уже юзера уведомит об этом

    Должно ли api заниматься отправкой уведомления в телеграм или оно не должно знать о существовании тг бота и сайта?
    у всех всё индивидуально, кто как делает, кто что придумает то и делает
  • Почему 400 шрифт выглядит жирнее, чем должен быть?

    szQocks
    @szQocks
    Если шрифт используется в заголовке, то указывай там явно в стилях font-weight: 400; , что бы перебить
  • Можно ли по этому примеру сказать что я понял event loop?

    szQocks
    @szQocks
    historydev хотя я тут ошибься на счёт Promise.resolve о том что синхронно возвращает промис, ну точнее не до конца верно написал, так как изначально когда мы объявляем промис он находиться в состоянии ожидания, а сам resolve делает его в статус разрешенный типа, и вот это время между объявлением промиса и между окончанием вызов resolve - имеет промежуток, пусть он там и мизерный, но всё же он есть, поэтому можно сказать что вызов resolve асинхронный, как-то так, кароч в целом resolve нужно дожидаться поэтому пусть это будет асинхронная операция нежели синхронная, хотя по факту она синхронная но из-за долбанного промежутка выходит такая шляпа, и с resolve в executor так же

    странно что из знатоков меня никто не поправил, вот же жмоты по знаниям) даже братишка WbICHA не подсказал)
  • Какой актуальный стек верстки 2024?

    szQocks
    @szQocks
    VolgaVolga,
    css-modules + webpack + sass ( + sass компоненты ) + бэм , а для сеток сейчас те же гриды справляются на ура и шаблонизатор если нужно = топчик
  • Какой актуальный стек верстки 2024?

    szQocks
    @szQocks
    Михаил Р.,
    На старте - быстро, а когда надо кастомизации добавить, особенно в js - выясняется, то руками с нуля написать быстрее.
    да может на старте и быстро или для мелких проектов, но когда дело доходит до переопределения стилей, там начинает дерьмо всплывать с этим приоритетами стилей, это дерьмо всплывает как с использование bootstrap/tilewind/css-in-js и подобных вещах

    css-modules + webpack + sass ( + sass компоненты ) + бэм , а для сеток сейчас те же гриды справляются на ура и шаблонизатор если нужно = топчик
  • Какой актуальный стек верстки 2024?

    szQocks
    @szQocks
    я даже не понимаю нах юзают бутстрап в новых проектах, ладно сетка раньше была - хорошим решением, но щас то на кой фиг он сдался, понимаю если ток поддерживать старые проекты которые написаны на бутстрапе
  • Какой актуальный стек верстки 2024?

    szQocks
    @szQocks
    VolgaVolga, зачем вообще какие-то tailwind классы и т.д, если можно просто юзать компоненты на sass ?
    с таким подходом как минимум даже лишнего класса не будет в html

    tailwind очередное пропиаринное говно как и vite
  • Почему не пойманная в Promise.all ошибка не попадает в catch?

    szQocks
    @szQocks
    сделай функцию async в которой отрабатывает Promise.all, тогда catch поймать должен, либо делай так как написал Alexandroppolus
  • Отслеживание таблицы в бд?

    szQocks
    @szQocks Автор вопроса
    Rsa97,
    Скорее, многие-ко-многим.
    - верно, исправил.

    да было бы неплохо всё это реализовать с кэшированием, ладно, буду думать
  • Отслеживание таблицы в бд?

    szQocks
    @szQocks Автор вопроса
    Rsa97, хотя я ща додумался как создавать эту комнату, без всяких кронов и интервалов

    просто когда пользователь входит в комнату - идёт проверка в таблице в бд, о том что стартовал ли этот аукцион - если стартовал и если комната не создана - создать и поместить в неё пользователя, и мб это всё через транзакцию

    в любом случае спасибо за помощь
  • Отслеживание таблицы в бд?

    szQocks
    @szQocks Автор вопроса
    Rsa97, многие ко многим ( один участник может быть сразу в нескольких аукционах, и у одного аукциона может быть несколько участников ), с промежуточной таблицей, да проблема не в этом, в том что с этим аукционом и с этими участниками ещё несколько таблиц связаны, например при старте аукциона должна создаваться комната на сокетах, в общем подумаю, но в целом примерно такое решается не через планировщики ? и не через отдельный сервер например который отслеживает таблицу каждую секунду ? были подобные ситуации/кейсы c отслеживанием таблицы ?
  • Отслеживание таблицы в бд?

    szQocks
    @szQocks Автор вопроса
    Rsa97,
    создать эти записи одновременно с записью самого аукциона?
    и обновлять их при действиях участников, если участник отменил регистрацию до старта аукциона например и т.д

    понял, ну в целом да это ответ на вопрос, вообще после того как я задал вопрос, у меня из головы всё вылетело, а именно причина по которой было не всё так просто, если потом вспомню в чём была ещё проблема то отпишу в коммент
  • Отслеживание таблицы в бд?

    szQocks
    @szQocks Автор вопроса
    Everything_is_bad, ладно за место аукциона, пусть будет магазин и время до его открытия

    в общем проблема вся в том что при старте магазина, должны создаваться другие записи в других таблицах которые связаны с этим магазином и всех его участников, которые например зарегистрировались в поход этого магазина
  • Отслеживание таблицы в бд?

    szQocks
    @szQocks Автор вопроса
    видимо да бестолково я написал вопрос, хоть и старался

    в общем проблема вся в том что при старте аукциона, должны создаваться другие записи в других таблицах которые связаны с этим аукционом и всех его участниках
  • Ошибка при запросе на api kits.ai, что делать?

    szQocks
    @szQocks
    milapokaz2011, в среду его выполнения, а вот где он выполняется - это уже у тебя надо спросить. Если ты не знаешь python, то и толку тебе от этого кода ? Ты не сможешь работать с API с этим кодом.
  • Ошибка при запросе на api kits.ai, что делать?

    szQocks
    @szQocks
    milapokaz2011, какой код ? если код который я написал в комментарии, то он находиться в комментарии, просто скопируй и всё

    КОД

    import requests
    import json
    token = 'xxx'
    ufr = requests.post('https://arpeggi.io/api/kits/v1/voice-conversions', headers={'Authorization': f'Bearer {token}'}, data={'voiceModelId': 56615}, files={ 'soundFile': open('vocals.mp3', 'rb')})
    print(ufr.status_code)
    print(ufr.text)