Be the first user to complete this post

  • 0
Add to List

Dynamic module loading with require


Let's say we have ./darwin.js for mac, ./win32.js for Windows in the current working directory. And we want to require one of them in ./index.js based on which platform the file is being ran. This is one of technique with require, that we can do computation inside it. Novice way of doing is the following:
if (os.platform() === "mac")
    var platform = require('./darwin.js');
else if (os.platform() === "win32")
    var platform = require('./win32.js');
Instead of above if...else conditional statments, we can write the following:
var platform = require("./" + os.platform());




Also Read:

  1. Es6 Spread operator
  2. What is an npmignore file and what is it used for
  3. Understanding nodejs module exports and require
  4. Accessing the request body and session in nodejs using express
  5. Disable eslint no-unused-vars warning on global functions