文件上传
- 文件上传时,存放在绝对路径下,而返回的时候,返回的是访问路径。
- 使用配置文件,方便图片位置的改变
mongod和mongo
- mongod提供数据库服务,启动服务win7有特殊的要求
- mongo使用数据库,可以对数据库增删改查
- nodejs中使用mongo
- npm install --save mongodb
- 在nodejs中,链接数据库,对数据库进行增删改查
mongooes
基于mongodb封装的ORM框架
- ORM,object relationship mapping,对象关系映射。通过对对象的修改,对数据进行操作。
- npm info mongodb,寻找该开源项目在github上的地址。
- github上使用文档
留言板
- npm init -y 快熟生成package.json
- 下载插件
- ejs,插件
- express,库
- mongoose,数据库操作库
- 开启数据库服务
- 设置package.json文件
- scripts对象中添加键值对:start:“node ./app.js”
- 项目结构
- app.js
- config.js
- routers
- controllers
- models
- views
注意点
- 支持数据类型
- Number
- Boolean
- String
- Date
- Buffer
- Array
- Mixed 任意类型
- Objectid 自定义类型
- mongod终端操作
- db.collection.drop() 删除集合
- db.collections 展示集合
- 增删改查
- 查看官方文档
promise
解决异步调用的嵌套,在ECMAScript中成为规范
- 异步流程控制,比如ajax的回调函数中再发请求
- 在node和新浏览器中可以使用promise对象
- promise三种状态
- pending
- resolved
- rejected
- 状态一旦赋值不会再改变
- 回调函数,两个参数resolve,reject
- 回调函数内部写异步操作代码
- then中为回调函数
- 除了第一个then,其它then的调用者改为上一个then的返回值
- then的返回值可以是普通数据,promise对象,undefined
var p1 = new Promise(function(resolve,reject){
fs.readFile("url",function(err,data){
if (err) {
return reject(err);
}
resolve(data);
});
});
- 封装promise版读文件
网友评论