一,后端接口
var express = require('express');
var router = express.Router();
const pool = require('../config.js')
router.get('/',(req,res) => {
//模糊查询的sql SELECT * FROM bloginformation WHERE blogTitle LIKE ? OR blogContent LIKE ? OR blogLable LIKE ?
var params = req.query || req.params;
let sql = "SELECT * FROM `account`"; //查询列表所有的数据
let sql1 = "SELECT * FROM `account`";
let content = [];
let content1 = [];
let isMore = false;//是否有多个查询参数
if(params.loginame){
// 模糊查询两种方法直接在SQL语句后加 mysql.escape("%"+req.body.name+"%")
// sql += " WHERE product_name LIKE "+mysql.escape("%"+req.body.name+"%")
sql += " WHERE loginame LIKE ?";
sql1 += " WHERE loginame LIKE ?";
content.push( "%"+params.loginame+"%" );
content1.push( "%"+params.loginame+"%" );
isMore = true;
}
if(params.role){
if(isMore){//true代表有多个参数
sql += "and role like ?";//and是两个条件都必须满足,or是或的关系
sql1 += "and role like ?";
}else{
sql += " WHERE role LIKE ?";
sql1 += " WHERE role LIKE ?";
}
content.push( "%"+params.role+"%" );
content1.push( "%"+params.role+"%" );
}
if(params.name){
if(isMore){//true代表有多个参数
sql += "and name like ?";//and是两个条件都必须满足,or是或的关系
sql1 += "and name like ?";
}else{
sql += " WHERE name LIKE ?";
sql1 += " WHERE name LIKE ?";
}
content.push( "%"+params.name+"%" );
content1.push( "%"+params.name+"%" );
}
if(params.page || params.page_size){//开启分页
let current = params.page;//当前页码
let pageSize = params.page_size;//一页展示多少条数据
sql += " limit ?,?";
content.push((current-1)*pageSize,parseInt(pageSize));
};
pool.getConnection(function (err, connection) {
if (err) console.log("POOL ==> " + err);
connection.query(sql, content,function(err,result){
if (err) {
return res.send('err')
}
connection.query(sql1, content1,function(err,result1){
if (err) {
return res.send('err')
}
res.json({
status:200,
message:{
result:result,
data: result1,
}
})
})
});
connection.release();
})
return
})
module.exports = router;
二,前端请求传参
let data = {
title: this.values,
status: status,
name: this.name,
page: page,
page_size: page_size,
};
await select_document(data).then(async (ok) => {
console.log(ok);
});