Задать вопрос
  • Как правильно задать аргумент в компонент?

    michael_mashush
    @michael_mashush
    1. Компонент Box, который принимает как props развернутый объект box:

    type Box = {
      name: string;
      date: string;
      image: string;
    };
    
    // можно сразу указать что props будет иметь тип Box, но я так не привык делать
    // всегда описываю тип Props для объекта props
    type Props = Box;
    
    export default function Box(props: Props) {
      const {name, date, image} = props;
    }


    И передавать в него данные нужно следующим образом:

    {data.map((box) => (
      <Box
        name={box.name}
        date={box.date}
        image={box.image}
      />
    ))}


    Или можно делать так, но это не везде принято делать, поскольку читаемость понижается (опять-таки все это условно, делай как считаешь нужным):

    {data.map((box) => (
      // поля объекта box сразу стали полями props
      // и про key не забудь внутри цикла map
      <Box key={?} {...box} />
    ))}


    2. Компонент Box, который принимает как props обычный объект, где box является вложенным объектом:

    type Box = {
      name: string;
      date: string;
      image: string;
    }
    
    type  Props = {
      box: Box;
    };
    
    export default function Box(props: Props) {
      const {name, date, image} = props.box;
    }


    и передавать его можно таким способом:

    {data.map((box) => (
      // объект box передается как props.box
      // и про key не забудь внутри цикла map
      <Box key={?} box={box} />
    ))}


    В большинстве случаев лучше использовать первый вариант, поскольку так легче использовать React.memo (если его, конечно, нужно использовать).
    Ответ написан
    1 комментарий
  • Почему в документации методы оборачивают в []?

    szQocks
    @szQocks
    https://habr.com/ru/articles/490084/
    раздел "Внутренние слоты и внутренние методы"
    Ответ написан
    Комментировать
  • Почему команда curl на windows не подключается к серверу?

    @Drno
    сервер не запущен
    если сервер внутри wsl - то по мойму по 127.0.0.1 с винды он и не будет доступен, т.к. это другое устройство )
    Ответ написан
    2 комментария
  • Можно используя только nginx сделать прокси впн сервер?

    @Drno
    Нет.
    Впн и прокси это разные вещи. Технически разная реализация.

    Прокси - принимает запрос - передает дальше - возвращает ответ. Из простых - 3proxy.

    Впн же подразумевает постоение связи на подобии физического интерфейса. По сути работает как роутер, к которому проводом подключили пк. Соответсвенно там есть и интерфейсы сетевые, и ip адреса, и возможность всё это маршрутизировать на их уровне.

    Так что это кардинально разные вещи. Чисто технически.

    Насчет прокси из nginx - я такого не встречал. Да и зачем, если для этого есть удобный спецсофт
    Ответ написан
    2 комментария
  • Можно используя только nginx сделать прокси впн сервер?

    @aleks-th
    Смотря что вы хотите.

    Прокси - можно.
    Прокси с шифрованием трафика - можно.
    Полноценный vpn сервер - пожалуй нет.
    ---
    Проще openvpn поставить и настроить если именно vpn нужен.

    А если нужен именно прокси то на мой взгляд squid для этих целей лучше и проще поставить
    Ответ написан
    3 комментария
  • Зачем next js нужен еще дополнительный сервер для задач на бэке?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Зачем вообще нексту еще другой сервер, если некст и так всё может делать сам?

    Сильное заявление. Next это в первую очередь - генератор сайтов, SSR, SSG итп, а вот Nest это целый комбаин бэкенда для JS:

    - Подключение и работа с базами данных: Nest.js может использовать различные ORM, такие как TypeORM, Sequelize или Mongoose, для работы с базами данных.
    - Создание RESTful API: В то время как Next.js предоставляет базовые возможности для создания API, Nest.js имеет более широкие возможности для создания сложных RESTful API.
    - Аутентификация и авторизация: Nest.js предоставляет поддержку для создания сложных систем аутентификации и авторизации.
    - Обработка ошибок: Nest.js предоставляет встроенные механизмы для обработки ошибок.
    - Валидация входных данных: С помощью библиотек, таких как class-validator, Nest.js может проверять входные данные на соответствие определенным правилам и структурам.
    - Middleware: Nest.js предоставляет встроенные механизмы для использования middleware, что позволяет производить предварительную обработку запросов.
    - Загрузка файлов: Nest.js может управлять загрузкой файлов и данных multipart/form-data.
    - Websockets и microservices: Nest.js имеет встроенные возможности для работы с веб-сокетами и микросервисами.
    - Dependency Injection: Nest.js имеет собственную систему внедрения зависимостей, основанную на TypeScript, что облегчает тестирование и повышает модульность кода.
    - CRON jobs и задачи в фоне: Nest.js позволяет легко создавать фоновые задачи и запускать задачи по расписанию.

    Почитать: https://habr.com/ru/articles/570886/
    Ответ написан
    Комментировать
  • Как в нексте правильно делать запросы к БД и работы с апи?

    godsplan
    @godsplan
    SSR реализуется через getServerSideProps
    https://nextjs.org/docs/pages/building-your-applic...
    Но вомзожно тебе нужно SSG, для этого существует getStaticProps
    https://nextjs.org/docs/pages/building-your-applic...
    Это при условии что ты работаешь не в app dir.

    Ну и естественно тебе нужен бэкенд чтобы он отдавал тебе данные которые ты получаешь на фронте
    Ответ написан
    5 комментариев
  • Как в Redis подключиться к 2 и более БД?

    он искал сам в какой DB он лежит?
    Redis так не работает.
    Всё, что вы можете - это в createClient передать номер нужной БД через ключ database: createClient({database: 42})
    Ответ написан
    3 комментария