Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

288
Views
TypeError: _utils_errorhandler__WEBPACK_IMPORTED_MODULE_1___default(...) is not a constructor

I am making a ErrorHandler.js to handle error in my nextJs api, I previously used this in my node-express server. But when the API returns an error instead of showing me the error it returns me this - TypeError: _utils_errorhandler__WEBPACK_IMPORTED_MODULE_1___default(...) is not a constructor I have made a class known as Errorhandler here is the code for it :

../utils/errorHandler.js file:

class ErrorHandler extends Error {
  constructor(message, statusCode) {
    super(message);
    this.statusCode = statusCode;

    Error.captureStackTrace(this, this.constructor);
  }
}

module.exports = ErrorHandler;

Then I made a middleware function using this class and marked all my error init, here is the code:

../../middleware/error.js file:

const ErrorHandler = require("../utils/errorhandler");

module.exports = (err, req, res, next) => {
  err.statusCode = err.statusCode || 500;
  err.message = err.message || "Internal Server Error";

  // Wrong Mongodb Id error
  if (err.name === "CastError") {
    const message = `Resource not found. Invalid: ${err.path}`;
    err = new ErrorHandler(message, 400);
  }

  // Mongoose duplicate key error
  if (err.code === 11000) {
    const message = `Duplicate ${Object.keys(err.keyValue)} Entered`;
    err = new ErrorHandler(message, 400);
  }

  // Wrong JWT error
  if (err.name === "JsonWebTokenError") {
    const message = `Json Web Token is invalid, Try again `;
    err = new ErrorHandler(message, 400);
  }

  // JWT EXPIRE error
  if (err.name === "TokenExpiredError") {
    const message = `Json Web Token is Expired, Try again `;
    err = new ErrorHandler(message, 400);
  }

  res.status(err.statusCode).json({
    success: false,
    message: err.message,
  });
};

I tried changing it to ES6 module but it didn't worked for me. The API code is here :

import connectToMongo from "../../middleware/db";
const ErrorHandler = require("../../middleware/error");

const handler = (req, res, next) => {
  return next(new ErrorHandler("Test successful", 404));
};

export default connectToMongo(handler);

I am testing the ErrorHandler here so and it returns me the same error in all my API routes It also returns next() is not a function some times.

The full Error is here :

error - (api)\pages\api\test.js (5:14) @ handler
TypeError: _utils_errorhandler__WEBPACK_IMPORTED_MODULE_1___default(...) is not a constructor
  3 |
  4 | const handler = (req, res, next) => {
> 5 |   return next(new ErrorHandler("Test successful", 404));
    |              ^
  6 | };
  7 |
  8 | export default connectToMongo(handler);
about 4 years ago · Juan Pablo Isaza
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!