Nodejs中的模块
- nodejs里面的模块不管是自定义的模块还是下载的模块我们都需要用 const 常量名 = erquire(“导入模块的地址”) 语句导入
1. nodemon
实时更新
- 每次修改代码都需要开关服务在刷新非常麻烦 这个可以帮助我们中开关服务器
!!!注意如果nodemon安装不上就用 supervisor模块也是一样的
npm i --save nodemon //安装模块
安装完后我们需要在 初始化文件package.json 将scripts函数修改
如:
{
"scripts": {
"start": "node ./bin/www",
"dev": "nodemon ./bin/www"
}
}
//在script是函数里面加上"dev": "nodemon ./bin/www" 让服务器自动刷新
2. mysql
- 安装mysql用于链接后台的数据库的使用
安装语法
:
npm i --save mysql
var mysql = require('mysql'); //引入mysql模块
// 配置链接服务器的信息
var pool = mysql.createPool({
port : 数据库的端口 , //默认3306 可不写
host : '主机名字 ', //localhost默认
user : '用户名',
password : '密码',
database : '数据库',
connrctionLinit: 链接的数量 //链接池默认5
});
// 重链接池中抓取链接
pool.getConnection(err,connection){
if(err) throw err//抓取失败后的错误信息 connection指抓取的链接
connection.query('对应的数据库执行命令', function (err, results, fields) {
connection.release() //释放链接
if(err){
throw err
// err 得到报错的信息 throw类式return 返回结果后面代码不会在执行
// 如果没有报错后面的代码则不会进入这个if语句
}
if后面是没有错误后需要执行的代码
});
}
//reults返回的是一个对象 命令执行后得到的结果集
//fields 一般不经常使用
2. server
- 可以快速生成一套完整的基于RestFul规范的api接口
安装语法
:
npm i -g --save json-server
使用方法:
1. 在文件夹里面创建一个 db.json 的文件来作为数据库 打开文件
{
"资源名1": []
"资源名2": []
....
}
以这个样的形式创建数据库 一个数租就相当于一个表格
运行命令 json-server --watch db.json 来将这个服务区运行起来就好了 注意!!!! 需要在db.json 所在的文件夹运行因为它是基于文件夹作为服务器
// 常用功能及参数
_page
表示请求第几页
_limit
表示一页多少条
过滤 查询某个指定的数据
写字段的名字,跟着要查询的值。例如:?name=李四
_sort
根据某字段进行拍寻 _sort:id 根据id排序
_order 排序的方式
asc desc 升序和降序 _order:desc 降序
字段名_like 模糊查询
通过使用对应`字段名_like`的形式,我们可以对对应的字段进行模糊查询 name_like:李 查询带有李的name字段
2. PM2
可以帮助我们自己在后台启动服务器 就是随时可以都过地址访问网站 及时关掉nodejs服务器也开着
`npm install pm2 -g `
pm2 里面相关的命令
pm2 start app.js -i 4 #后台运行pm2,启动4个app.js
# 也可以把'max' 参数传递给 start
# 正确的进程数目依赖于Cpu的核心数目
pm2 start app.js --name my-api # 命名进程
pm2 list # 显示所有进程状态
pm2 monit # 监视所有进程
pm2 logs # 显示所有进程日志
pm2 stop all # 停止所有进程
pm2 restart all # 重启所有进程
pm2 reload all # 0秒停机重载进程 (用于 NETWORKED 进程)
pm2 stop 0 # 停止指定的进程
pm2 restart 0 # 重启指定的进程
pm2 startup # 产生 init 脚本 保持进程活着
pm2 web # 运行健壮的 computer API endpoint (http://localhost:9615)
pm2 delete 0 # 杀死指定的进程
pm2 delete all # 杀死全部进程