kao2+mongodb搭建小程序后台环境(一)

kao2+mongodb搭建小程序后台环境(一)

一、安装koa2

1.进入项目根目录,执行以下命令

npm install -g koa-generator // 安装koa2脚手架工具
koa2 -e server //创建server项目,项目名称可自取
cd server //进入server目录
cnpm install //安装package.json文件中的依赖

二、创建相关目录及文件(名字可以自取)

1.在server目录下,创建database目录
2.在database目录下创建init.js文件
3.在server目录下创建index.js文件

index.js的文件内容如下

	const Koa = require('koa');
	const App = new Koa();
	App.use(async(ctx)=>{
        ctx.body = "<h1>hello koa2</h1>";
    })
    .listen(3000,()=>{
        console.log("3000端口启动成功!");
    })
4.在server目录下执行

node index.js
koa2 successfully installed

5.打开浏览器访问localhost:3000

koa2 successfully installed



二、安装mongoose

1.在server目录下执行
`npm install mongoose --save //安装mongoose`  
2.编辑init.js   

init.js文件的内容如下

	const mongoose = require('mongoose')
	const db = 'mongodb://127.0.0.1/music'
	// mongoose自己实现的Promise与规范的Promise存在差异,在这里使用node.js实现的Promise global 是服务器端的全局对象
	mongoose.Promise = global.Promise
	exports.connectdb = () => {
	  let  maxConnectTimes = 0
	  return new Promise((resolve,reject) => {
	    if (process.env.NODE_ENV !== 'production') {
	        mongoose.set('debug', true)
	      }
	      mongoose.connect(db)
	      mongoose.connection.on('disconnect', () => {
	        maxConnectTimes ++
	        if (maxConnectTimes < 5) {
	          mongoose.connect(db)
	        } else {
	          throw new Error('There is something wrong about mongodb')
	        }
	      })
	      mongoose.connection.on('error', () => {
	        reject(err)
	        console.log(error)
	      })
	      mongoose.connection.on('open', () => {
	        resolve()
	        console.log('Mongodb connected successfully')
	      })
	  })
	}
3.完善index.js文件

*index.js文件的内容如下

	const Koa = require('koa')
	const {connectdb} = require('./database/init')
	const App = new Koa()
	App.use(async(ctx)=>{
	    ctx.body = "<h1>hello koa2</h1>"
	})
	.listen(3000,()=>{
	    console.log("3000端口启动成功!")
	})
	;(async ()=>{
	    await connectdb();
	})()
4.在server目录下执行

node index.js
如果打印出
Mongodb connected successfully则说明连接成功

参考链接
koa2 入门(1)koa-generator 脚手架和 mongoose 使用

posted @ 2019-04-08 19:10  丝血反杀闰土的猹007  阅读(620)  评论(0)    收藏  举报