Building a Really Simple Node.js Module
Support this website by purchasing prints of my photographs! Check them out here.This is an example of building a simple Node.js module. The code is super simple, but it should give you a good feel for how it is done. The magic of the Node.js module system is performed mostly by the require
function, which is similar to PHP's include
/require
statements.
When you perform a require, Node.js looks for a file in a few different locations. They all have their purposes, but for this demo, we'll be using the node_modules
subdirectory. Simply create this directory in the same directory as your main application code. Then, inside of the node_modules
directory, add another subdirectory, but this time it will be named after your module. For this example I just use the phrase test
.
(PS, you can ignore the package.json
files, they are used for some more advanced magic).
Now that you have the necessary files in place, we need some code to put inside of them. The following example is really simple, but it's a good start:
app.js
var greeter = require('test');
greeter.hello("Monkey");
greeter.bye("Steven");
node_modules/test/index.js
module.exports = {
hello: function(name) {
console.log("Hello, " + name);
},
bye: function(name) {
console.log("Goodbye, " + name);
}
};
Example output
$ node app.js
Hello, Monkey
Goodbye, Steven
Simple, huh?
Node provides the aptly named module
object for your module to work with. What you want to do is assign your object to it's exports
attribute. Once you do that, this object is now returned to your calling app as the result of the require
function.