Node JS -Ultra fast applications using Node js - Node - Node JS tutorial - Nodejs




Creating modules

var http = require('http');

When we do this, Node.js will search on our disk for a file called http.js. Likewise, if we ask for the "url" module, Node.js will search for a file called url.js.

var url = require('url'); // Calls for url.js
  • They are hidden in a nice and warm place on your disk, their location is of no interest to us.
  • Given that they are part of the core of Node.js, they are always available.
  • The modules are therefore simply .js files. If we want to create a module, let’s say the "test" module, we need to create a test.js file in the same folder and call for it like this:
var test = require('./test'); // Calls for test.js (same folder)
  • Don’t put the .js extension in the require()!
  • It’s a relative path. If the module is in the parent folder, we can include it like this:
var test = require('../test'); // Calls for test.js (parent folder)
  • What if I don’t want to put in a relative pathway? Can’t I just do require('test')?
  • You can! You need to put your test.js file in a sub-folder called "node_modules". It’s a Node.js standard:
var test = require('test'); // Calls for test.js (node_modules sub-folder)
 nodejs application

Learn Nodejs - Nodejs tutorial - nodejs application - Nodejs examples - Nodejs programs

  • Note that if the node_modules file doesn’t exist, Node.js will go to search in a file that has the same name higher up in the tree. This way, if your project is found in the /home/mateo21/dev/nodejs/projet folder, it will go and find a file named:
/home/mateo21/dev/nodejs/projet/node_modules, and if this file doesn’t exist, it will go and search in…
… /home/mateo21/dev/nodejs/node_modules, and if the file doesn’t exist, it will go and search in…
... /home/mateo21/dev/node_modules, and so on!
var sayHello = function() {
    console.log('Hello!');
}

var sayGoodbye = function() {
    console.log('Goodbye!');
}

exports.sayHello = sayHello;
exports.sayGoodbye = sayGoodbye;
  • The start of the file doesn’t contain anything new. We’re creating functions that we’re placing in the variables. From which the var sayHello = function() comes from.
  • Then comes the new part, we’re exporting functions so they are usable externally: exports.sayHello = sayHello;. Note that we could have just done this instead:
exports.sayHello = function() { ... };
  • All the functions that you don’t export in your module file will remain private. They won’t be able to be called for externally.
  • However, they will be able to be used by other functions within your module.
  • Now, in your app’s main file (ex: app.js), you can call for these functions from the module!
var mymodule = require('./mymodule');

mymodule.sayHello();
mymodule.sayGoodbye();
  • require() returns an object that contains the functions that you exported in your module. We store this object in a variable of the same name mymodule (but we could have given it any other name), like in the next figure.
 nodejs application architecture

Learn Nodejs - Nodejs tutorial - nodejs application architecture - Nodejs examples - Nodejs programs


Related Searches to Ultra fast applications using Node.js

Adblocker detected! Please consider reading this notice.

We've detected that you are using AdBlock Plus or some other adblocking software which is preventing the page from fully loading.

We don't have any banner, Flash, animation, obnoxious sound, or popup ad. We do not implement these annoying types of ads!

We need money to operate the site, and almost all of it comes from our online advertising.

Please add wikitechy.com to your ad blocking whitelist or disable your adblocking software.

×