• Jobs
  • About Us
  • professionals
    • Home
    • Jobs
    • Courses and challenges
  • business
    • Home
    • Post vacancy
    • Our process
    • Pricing
    • Assessments
    • Payroll
    • Blog
    • Sales
    • Salary Calculator

0

521
Views
Error: Route.get() requires a callback function but got a [object Undefined] while using imported function

I am checking if a user is logged in a route called forum. I am importing it like this. The file is routes/forum.js

const isloggedinimport = require('../index')

I have the function on index.js

const isloggedin = (req,res,next) => {
  if(req.user) {
    next()
  }
  else {
    res.render('loginerror',)
  }
}

I am exporting with

module.exports = isloggedin 

When I try to run this


router.get('/', isloggedinimport.isloggedin, (req, res) => { 
    res.render('monitors/monitorhome')
});


module.exports = router

I get the error that Route.get() requires a callback function but got a [object Undefined]

The error is on this line

router.get('/', isloggedinimport.isloggedin, (req, res) => { 

How do I fix this?

almost 3 years ago · Juan Pablo Isaza
1 answers
Answer question

0

When exporting the function, try using the following code:

module.exports.isloggedin = isloggedin

This will set the property isloggedin to the function so that when you call isloggedinimport.isloggedin, it will access the function properly. Alternatively, you could use the following code to export your function:

module.exports = isloggedin

and then use this code to import the function:

const isloggedin = require('../index')

...

router.get('/', isloggedin, (req, res) => { 
    res.render('monitors/monitorhome')
});
almost 3 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Our process Sales
Legal
Terms and conditions Privacy policy
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recommend me some offers
I have an error