I am new to the world of Node.js.I am trying to learn through an example.I have encountered the following statements in the "app.js" .
var express = require("express");----->1
var app = express(); --------->2
So I understand the first statement is to load express module .What is the need for second statement??
Inorder to load a MYSQL module in my app.js we use
var mysql = require("MYSQL");
We access SQL properties by mysql.connect("") etc.
so why cannot we write "express.get()" instead of "app.get()"????
Why do we need var express = require("express");??
Any help would be highly appreciated.
express
is a module that can be used to create more than one application.
var ex = require('express')
puts this module into the variable ex
. Once you have a reference to the module, you can use it to create application. Each module has its own API. According to the expressjs documentation - http://expressjs.com/en/4x/api.html, the module is in fact a function that can be used to create applications
var app1 = ex();
var app2 = ex();
you could for example want to have several web applications listening on different ports.
If you only want one application (but it would be less readable) you could write
var app = require('express')();
The real difference between require('express')
and express()
is that require('express')
allows you to have access to any public functions or properties exposed by module.exports
.
The express()
syntax is the equivalent of saying new express()
. It creates a new instance of express
that you can then assign to a variable and interact with.
That is why the standard creation pattern for Express is
// Import the Express module
var express = require('express');
// Create a new Express Instance
var app = express();
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With