资讯专栏INFORMATION COLUMN

react下express+mongodb入门使用

JohnLui / 721人阅读

摘要:个人用的是脚手架创建的用于开发接口注意使用脚手架时,会自带,如果再次执行安装了,运行会报错,此时需要卸载,然后重新安装就了。

个人用的是create-react-app脚手架创建的APP
Express:用于开发web接口
!!!注意 : 
使用脚手架时,node_modules 会自带express,如果再次执行 npm install express --save 安装了 express,npm start 运行会报错,此时需要 npm uninstall express卸载,然后重新安装就OK了。

安装: npm install express --save

    //目录:  server/server.js
   
    const express = require("express");
    // 新建app
    const app = express(); 
        
    app.get("/", (req, res)=>{
        res.send("

Hello world!

") }) app.get("/data", (req, res)=>{ res.json({desc:"想要躺赢的马瑞华", job:"程序猿"}) }) app.listen(9093,function(req, res){ console.log("Node app start at port 9093") })

进入 server/目录下执行:/> node server.js
运行结果:

localhost:9093/

localhost:9093/data

!!!如果修改代码,页面会出现 Cannot GET /data,重新执行命令 /> node server.js,MMP好麻烦,往下看:

我们可以使用 nodemon 来实现自动自动重启express,安装:npm install -g nodemon
执行nodemon server.js ,妥了
安装完毕,以后再也不需要再手动操作了~

express详细使用:戳我跳转

Mongodb+mongoose:

>>>mongodb下载<<<

使用nodejs的 mongoose 模块链接和操作mongodb,安装 /> npm install mongoose --save
>>>mongoose详细教程<<<

mongoose 连接数据库
    //目录:  server/server.js
   
    const express = require("express");
  + const mongoose = require("mongoose");
  + const BD_URL = "mongodb://localhost:27017"
  + // 链接数据库
  + mongoose.connect(DB_URL)
  + mongoose.connection.on("connected", function(){console.log("mongo 链接成功")})

    // 新建app
    const app = express(); 
        
    app.get("/", (req, res)=>{
        res.send("

Hello world!

") }) app.get("/data", (req, res)=>{ res.json({desc:"想要躺赢的马瑞华", job:"程序猿"}) }) app.listen(9093,function(req, res){ console.log("Node app start at port 9093") })

执行nodemon server.js

定义文档模型,Schema和modal新建模型
    //目录:  server/server.js
   
    const express = require("express");
    const mongoose = require("mongoose");
    const DB_URL = "mongodb://localhost:27017"
    // 链接数据库
    mongoose.connect(DB_URL)
    mongoose.connection.on("connected", function(){console.log("mongo 链接成功")})
    
  + // 创建User模型
  + const User = mongoose.model("users", new mongoose.Schema({
  +     name:{type:String, require:true},
  +     age:{type:Number, require: true}
  + }))

  + // 新增数据
    // 方法一:
  + const userModel = new User({username, type, pwd:md5Pwd(pwd)});
  +   userModel.save(function(err,doc){
  +     console.log(doc)
  +     if(err){return res.json({code:1, msg:"服务器忙"})}
  +     const {username, type, _id} = doc;
  +     res.cookie("user_id", _id)
  +     return res.json({code:0, data:{username, type, _id} })
  +   })
    // 方法二
  +   User.create({username, type, pwd:md5Pwd(pwd)}, function(err, doc){
  +     console.log(doc)
  +     if(err){
  +       return res.json({code:1, msg:"后台出错了"})
  +     }
  +     return res.json({code:0})
  +   }) 


  + // 删除数据
  + // User.remove({age:18}, function(err, doc){
  + //     console.log(doc)
  + // })

  + // 更新数据
  + // User.update({"name":"Kenny"}, {"$set":{age:30}}, function(err, doc){
  + //     console.log(doc)
  + // })

    // 新建app
    const app = express(); 
        
    app.get("/", (req, res)=>{
        res.send("

Hello world!

") }) app.get("/data", (req, res)=>{ - // res.json({desc:"想要躺赢的马瑞华", job:"程序猿"}) + // 查找信息 find, findOne + User.find({user:"Kenny"}, function(err, doc){ + res.json(doc) + }) }) app.listen(9093,function(req, res){ console.log("Node app start at port 9093") })

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/19422.html

相关文章

  • reactexpress+mongodb入门使用

    摘要:个人用的是脚手架创建的用于开发接口注意使用脚手架时,会自带,如果再次执行安装了,运行会报错,此时需要卸载,然后重新安装就了。 个人用的是create-react-app脚手架创建的APP Express:用于开发web接口 !!!注意 : 使用脚手架时,node_modules 会自带express,如果再次执行 npm install express --save 安装了 expr...

    Lowky 评论0 收藏0
  • React + MobX 入门及实例(二)

    摘要:在上一章入门及实例一应用实例的基础上增加优化界面增加后台框架,操作。删除选中项时,一定要在删除成功后将置空,否则在下次选择时会选中已删除的项,虽然没有元素但可能会影响其他一些操作。中设置跨域访问实际是对进行匹配。 在上一章 React + MobX 入门及实例(一) 应用实例TodoList的基础上 增加ant-design优化界面 增加后台express框架,mongoose操作。...

    Eidesen 评论0 收藏0
  • 使用React、Node.js、MongoDB、Socket.IO开发一个角色投票应用的学习过程(一

    摘要:本项目是对使用开发一个角色投票应用的学习过程。到这里为止没有遇到多大的坑,最多的往往是拼写错误引起的问题,唯一由于拼写导致,但不提示错误的是我打成了运行的时候服务器一直没有响应,找了好久才找到这个错误后篇使用开发一个角色投票应用的学习过程二 本项目是对使用React、Node.js、MongoDB、Socket.IO开发一个角色投票应用的学习过程。 英文原文:Create a char...

    loonggg 评论0 收藏0
  • 服务器小白的我,是如何成功将 node+mongodb 项目部署在服务器上并进行性能优化的

    摘要:前言本文讲解的是做为前端开发人员,对服务器的了解还是小白的我,是如何一步步将项目部署在阿里云的服务器上,并进行性能优化,达到页面秒内看到,秒内看到首屏内容的。搭建的项目是采用了主流的前后端分离思想的,这里只讲服务器环境搭建与性能优化。 showImg(https://segmentfault.com/img/remote/1460000017143281); 前言 本文讲解的是:做为前...

    zsy888 评论0 收藏0

发表评论

0条评论

JohnLui

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<