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

235
Views
how to override or extend ESM module in node js?

i want to add new function or override function into module in type esm.

But I do not know how ؟؟؟

in CommonJS Is as follows

add new function

// include the module that you like extend
var fs = require('fs');
 
// add a new function, printMessage(), to the module
fs.printMessage = function(str){
    console.log("Message from newly added function to the module");
    console.log(str);
}
 
// re-export the module for changes to take effect
module.exports = fs
 
// you may use the newly added function
fs.printMessage("Success");

override

// include the module whose functions are to be overridden
var fs = require('fs');
 
// delete the function you would like to override
delete fs['readFile'];
 
// add new functional with the same name as deleted function
fs.readFile = function(str){
    console.log("The functionality has been overridden.");
    console.log(str);
}
 
// re-export the module for changes to take effect
module.exports = fs
 
// you may use the newly overriden function
fs.readFile("sample.txt");

but in ESM i don't know ?

for example

test.mjs

const add = (a,b) => {
    return a+b;
}

const sub = (a,b) => {
     return a-b;
}

export {add,sub};

index.js

import * as m from './test.mjs';

now , how to add new function or override 'add' or 'sub' in test.mjs 
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!