Добавить в корзинуПозвонить
Найти в Дзене
Артем Аполлон

const isLoggedIn = !!req.auth

export default auth((req) => { const isLoggedIn = !!req.auth console.log("IS LOGGEDIN:", isLoggedIn) })
Конструкция js
const isLoggedIn = !!req.auth означает следующее: js
const isLoggedIn = !!req.auth js
export default auth((req) => { const isLoggedIn = !!req.auth console.log("IS LOGGEDIN:", isLoggedIn) }) const isLoggedIn = !!req.auth — это способ получить булевый признак: Это очень распространённый и удобный приём для проверки наличия сессии или авторизации в Node.js/Next.js-приложениях.
Оглавление

export default auth((req) => {

const isLoggedIn = !!req.auth

console.log("IS LOGGEDIN:", isLoggedIn)

})

Конструкция

js
const isLoggedIn = !!req.auth

означает следующее:

Подробное объяснение

  • req.auth — это объект сессии или аутентификации пользователя, который появляется в объекте запроса (req), если middleware аутентификации (например, Auth.js/NextAuth.js) успешно определил, что пользователь авторизован.
  • Если пользователь не авторизован, req.auth будет undefined или null.
  • Двойное отрицание !! — это трюк в JavaScript/TypeScript, который приводит любое значение к булевому типу:
    Если значение "истинное" (truthy) — результат будет true.
    Если "ложное" (falsy: undefined, null, 0, "", false) — результат будет false.

Как это работает в контексте

js
const isLoggedIn = !!req.auth

  • Если у пользователя есть сессия (req.auth существует), то isLoggedIn будет true.
  • Если пользователь не авторизован (req.auth отсутствует), то isLoggedIn будет false.

Для чего это нужно?

  • Позволяет быстро и удобно определить, авторизован ли пользователь.
  • Можно использовать это значение для условной логики: показывать или скрывать определённые данные, перенаправлять неавторизованных и т.д.

В вашем примере

js
export default auth((req) => { const isLoggedIn = !!req.auth console.log("IS LOGGEDIN:", isLoggedIn) })

  • Функция-обёртка auth добавляет в req поле auth при наличии сессии.
  • Внутри обработчика вы определяете, авторизован ли пользователь, и выводите результат в консоль.

Кратко

const isLoggedIn = !!req.auth — это способ получить булевый признак:

  • true — пользователь авторизован
  • false — пользователь не авторизован

Это очень распространённый и удобный приём для проверки наличия сессии или авторизации в Node.js/Next.js-приложениях.