var express = require('express');
var app = express();
mongoose.connect( mongodb://iot:iot@localhost:27017/iothub, { useNewUrlParser: true })
// view engine setup app.set('views', path.join(__dirname, 'views')); app.set('view engine', 'jade');
app.use(logger('dev')); app.use(express.json()); app.use(express.urlencoded({ extended: false })); app.use(cookieParser()); app.use(express.static(path.join(__dirname, 'public')));
app.use('/devices', deviceRouter); app.use('/tokens', tokensRouter); app.use('/emqx_web_hook', webHookeRouter) app.use('/messages', messageRouter) app.use('/tags', tagsRouter) app.use('/ota', otaRouter)
// catch 404 and forwa有rd to error handler app.use(function(req, res, next) { next(createError(404)); });
// error handler app.use(function(err, req, res, next) { // set locals, only providing error in development res.locals.message = err.message; res.locals.error = req.app.get('env') === 'development' ? err : {};
// render the error page res.status(err.status || 500); res.render('error'); });
module.exports = app;
我想问一下怎样理解这段代码中的var app = express()和它下面的代码之间的关系,是不是在这个之后的代码最后都会被封装进app中去,包括ongoose.connect( mongodb://iot:iot@localhost:27017/iothub, { useNewUrlParser: true })这段代码,然后我想再问一下,如果有另外的文件调用这个导出的模块时,var app = express()后面的代码是怎样执行的?