最近在学习Node.js,有一点想不明白。
在我们启动node项目的时候,配置在mysql文件中的index.js文件为什么会自动执行。
我理解的命令node index.js 只是执行inde.js这个启动文件,不知道数据库为什么自动链接上了。虽然很好,但是确实不太懂。
知道的大神,帮忙解答以下谢谢。
所有你 require
进来的 JS 都会执行,index.js 是入口。
// index.js
// 在index.js中并没有引入mysql的相关文件,mysql/index.js就自动执行了
// 虽然很妙,但是理解不了。
const express = require('express')
const app = express()
const router = require('./router')
const bodyParser = require('body-parser') // 解析请求体数据
app.use(bodyParser.json())
app.use('/api',router)
app.listen(8899,(req,res)=>{
console.log('server is run in port 8899')
})
// mysql/index.js
const mysql = require('mysql')
var connection = mysql.createConnection({
host:'localhost',
user:'master',
password:'*****',
database:'*****',
})
connection.connect((err)=>{
if(err){
console.log('err' + err.stack)
return
}
console.log('connected as id ' + connection.threadId)
})
function sqlHanndle (options, callback){
connection.query(options,(err, result)=>{
if(err){
console.log('err!!!!'+err)
return
}
callback(result)
})
}
module.exports = sqlHanndle