express+vue+mongonDB 项目搭建 实现增删改查
一、express项目安装(需要提前准备node npm相应的环境)
1.初始化pack.json npm init -y
2.下载express npm install express --save
3.在根目录下新建app.js

// 导入express
const express = require('express');
// post参数处理
var bodyParser = require('body-parser')
const app = express();
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({
extended: true
}));
//
app.use('/user',require('./controller/user'));
//端口监听
app.listen(3000,()=>{
console.log('node服务启动')
});
4.安装nodemon 检测服务 自动重启 npm install nodemon --save
5.启动服务 nodemon app
二.、express与mongoDB的连接
1.根目录下新建db.js (需要提前安装好mongoDB及可视化工具)

// 导入mongo包
const mongoose = require("mongoose");
// 建立连接 后面跟上数据库地址及库名
mongoose.connect("mongodb://localhost/csData", err => {
if (err) console.log("**********【数据库连接失败】**********");
else console.log("**********【数据库连接成功】**********");
});
//导出
module.exports = mongoose;
2.测试连接

三、vue搭建
1.下载vue-cli脚手架 npm install vue-cli -g
2.下载element-ui axios等三方库
3.npm run dev 运行项目
四、CRUD
1.创建实列 新建Model文件并在文件夹下新建user.js
//导入db.js
const mongoose = require('../db.js');
const Schema = mongoose.Schema;
// 新建Schema对象
const userSchema = new Schema({
name:String,
age:Number,
address:String,
email:String
})
//使用model 第三个参数为表名 如果第三个参数不设置则默在表名后加s users
const Models = {
user:mongoose.model('user',userSchema,'user')
};
module.exports = Models;
2.业务实现
在更目录下新建controll并在下面新建user.js
const express = require('express');
const router = express.Router();
// 导入实列
const modalUser = require('../modal/user');
// 查询用户列表
router.post('/userList',function(req,res){
let params = req.body;
let param = {};
console.log(param);
modalUser.user.find(param,(err,data) =>{
if(err){
res.status(500).send()
return
} else {
res.send({
state:200,
msg:'查询成功',
data:data
})
}
});
});
//新增用户
router.post('/addUser',function(req,res){
modalUser.user.create(req.body,(err,data)=>{
if(err){
res.status(500).send()
return
} else{
res.send({
state:200,
msg:'添加成功'
})
}
})
})
//修改信息
router.post('/updataUser',function(req, res){
modalUser.user.update({'id':req.body.id},req.body, function(err,data){
if(err){
res.status(500).send()
return
} else {
res.send({
state:200,
msg:'更新成功'
})
}
})
})
//删除
router.get('/deleteUser',function(req,res){
modalUser.user.remove({'_id': req.query.id},function(err,data){
if(err){
res.status(500).send()
return
} else {
res.send({
state:200,
msg:'删除成功'
})
}
})
})
module.exports = router

浙公网安备 33010602011771号