美文网首页
express+mongoose小记

express+mongoose小记

作者: cs0710 | 来源:发表于2018-05-29 18:17 被阅读16次
对于我而言,花开了一天时间去实践express框架和mongoose常用的API,虽然mngoose的官方版本已经出到了5.1.2,但是国内的中文文档刚刚到4.5,虽然这样,还是硬着头皮看了中文,因为英文我是最low的那一位!
我这里直接说一下我的使用涉及到的点,由于刚刚接触不久,这里主要设计的功能API有增删改查和分页,以及对参数在不同场景下的使用传递。
图片.png

是不是看了页面想🤮。这是昨晚花了一个小时弄的,里面的路由用的是react-router v4版本,我主要想使用的是它的Link,这样可以和左侧菜单关联,省了好多事情,而不需要去映射路由。

前端的直接使用的create-react-app生成的,左侧菜单是我担们拎出来使用的,用pro的话太重了,因为我这里只是先探个路,所以没那么多功能模块。

node端我是直接使用的express-generator生成,只是在里面 加了一个mongoose的配置文件,去操作数据库。

图片.png

整个文件的命名,很随意,勿喷,给小弟留点信心!具体命名规范其实是需要在cmsServer的文件目录中根据MVC的分布目录去命名。一切搞好之后,只需要分别启动两台服务器,建议安装nodemon,对你修改的node文件进行监听,其实再懒一些,可以启动一台服务器,在package.json()文件夹里写入你的node启动脚本就可以,两者合并一下…...

图片.png

这里首先需要连接使用connenct()连接数据库,里面的参数是uri它的格式为“mongodb://用户名:密码@localhost:数据库端口号(默认27017)/数据库名字”,然后使用创建的连接实例坚挺连接状态即可。

大前端
图片.png 图片.png

前端的请求使用的axios,这里为什么不使用fetch呢?

是因为这里没有用到node的模版引擎,即使node必须要有模版引擎的引入。既然项目里两台服务器运行,就存在了跨域的问题,get请求还好,可以通过res.header("Access-Control-Allow-Origin", "*");绕过去,可是post是绕不过去的,据说已经有人给提他们团队出来了,很鸡肋啊!所以我推翻使用了axios。

这里没使用redux或者dva(现在项目里使用到了dva),是因为对于简单的项目引入dva会增加复杂度。所以这里有引入了node的事件机制去通信和管理状态。

前端使用的技术栈很少,所以这里酒到此为止了吧。

node-server
图片.png

这里的schema对于字段的校验和初始化可以参考文档,但是这里有一个小坑,就是createTime的default字段我刚开始设置的Date.now()获取的时间戳传递进去了,结果再去新建时时间不会改变,需要强制刷新浏览器才可以。

原因就是这里,其实因该使用的是Date.now这是一个函数的引用,是活的,每次调用的时候都会生成一次,这样就可以了。

图片.png

这里举一个小例子就好,我们在使用API进行操作数据库的时候,一定要记得return,否则会报错响应头重写了!具体原因不太清楚,待探索…...

图片.png

END!

相关文章

  • express+mongoose小记

    对于我而言,花开了一天时间去实践express框架和mongoose常用的API,虽然mngoose的官方版本已经...

  • nodercms项目源码阅读

    nodercms是一个使用express+mongoose编写的cms。整个项目目录结构是一个典型的Express...

  • MongoDB基础2——Mongoose的操作指南

    0.目标 本文主要介绍了在Node.js中使用Express+Mongoose对MongoDB进行操作的一些方法。...

  • Web版扫雷开发小记(3)

    前篇: web版扫雷开发小记(1)web版扫雷开发小记(2)web版扫雷开发小记(3)web版扫雷开发小记(4) ...

  • 使用express+mongoose开发简单的blog

    最近工作上需要使用Nodejs开发一些小的demo,有些数据使用数据库进行存储,就用了express+mongoo...

  • 小记

    小记

  • 参观中药房

    今天是孩子第一次参加安广小记者的活动,早早的起床,穿上小记者的马甲,带上小记者帽子,还有小记者的专用笔和...

  • 参观中药房

    今天是孩子第一次参加安广小记者的活动,早早的起床,穿上小记者的马甲,带上小记者帽子,还有小记者的专用笔和...

  • Web扫雷开发小记(1)

    目录Web扫雷开发小记(2)Web扫雷开发小记(3)Web扫雷开发小记(4) 刚好今天做阿里前端笔试问到扫雷了,那...

  • web版扫雷开发小记(4)

    目录:Web扫雷开发小记(1)Web扫雷开发小记(2)Web扫雷开发小记(3) 其实在完成上篇的功能之后,一个扫雷...

网友评论

      本文标题:express+mongoose小记

      本文链接:https://www.haomeiwen.com/subject/lspajftx.html