5-3 掌握 egg.js + 云 mongodb
1 egg.js
1.1 初始化
- 初始化和项目启动方法
# 初始化
$ mkdir egg-example && cd egg-example
$ npm init egg --type=simple # 实际上执行的是 npm i create-egg
$ npm i
# 项目启动
$ npm run dev
$ open http://localhost:7001
1.2 通过 egg.js 框架添加新的 API
app > controller > project.js
'use strict';
const Controller = require('egg').Controller;
class ProjectController extends Controller {
// 获取项目/组件的代码模板
getTemplate() {
const { ctx } = this;
ctx.body = 'get template'
}
}
module.exports = ProjectController;
app > router.js
'use strict';
// @param {Egg.Application} app - egg application
module.exports = app => {
const { router, controller } = app;
router.get('/project/template', controller.project.getTemplate);
};
2 云 mongodb
2.1 本地 mongodb 调试技巧
1. 启动
- 在mongodb安装目录下新建mongo.config配置文件,内容如下:
dbpath=D:\mongodb\data
logpath=D:\mongodb\log\mongo.log
- 在当前位置打开cmd命令行窗口
- 执行命令:> mongod.exe --config mongo.config
- 浏览器打开
http://127.0.0.1:27017-- 有如下显示说明启动成功
2.2 egg.js 接入 mongodb 方法
- 创建
mongo实例
app > utils > mongo.js
'use strict';
const Mongodb = require('@pick-star/cli-mongodb')
const { mongodbUrl, mongodbDbName } = require('../../config/db')
function mongo() {
return new Mongodb(mongodbUrl, mongodbDbName)
}
module.exports = mongo
- 设置配置数据
config > db.js
'use strict';
/** MONGODB **/
const mongodbUrl = 'mongodb://localhost:27017/zmoon-cli'
const mongodbDbName = 'zmoon-cli'
module.exports = {
mongodbUrl,
mongodbDbName
}
- 服务器 api 执行
'use strict';
const Controller = require('egg').Controller;
const mongo = require('../utils/mongo')
class ProjectController extends Controller {
// 获取项目/组件的代码模板
async getTemplate() {
const { ctx } = this;
const data = await mongo().query('project')
ctx.body = data
}
}
module.exports = ProjectController;
5-3 掌握 egg.js + 云 mongodb的更多相关文章
- 在egg.js中使用mongodb
1.egg.js官网只推荐了mysqle,要用mongodb得另找资料.通过查找,大家都在用Mongoose连接,于是乎学习. 网站链接:https://www.npmjs.com/package/e ...
- 基于 Egg.js 框架的 Node.js 服务构建之用户管理设计
前言 近来公司需要构建一套 EMM(Enterprise Mobility Management)的管理平台,就这种面向企业的应用管理本身需要考虑的需求是十分复杂的,技术层面管理端和服务端构建是架构核 ...
- Serverless + Egg.js 后台管理系统实战
本文将介绍如何基于 Egg.js 和 Serverless 实现一个后台管理系统 作为一名前端开发者,在选择 Nodejs 后端服务框架时,第一时间会想到 Egg.js,不得不说 Egg.js 是一个 ...
- egg.js部署到服务器
关于egg.js项目部署服务器的问题 我使用的是腾讯云centos , 部署前需要确保服务器上安装了mysql, node . mysql下载:https://dev.mysql.com/downlo ...
- egg.js in action
egg.js in action fullstack https://github.com/eggjs/egg/ cli config router service midlewares HTTP C ...
- 基于 Angularjs&Node.js 云编辑器架构设计及开发实践
基于 Angularjs&Node.js 云编辑器架构设计及开发实践 一.产品背景 二.总体架构 1. 前端架构 a.前端层次 b.核心基础模块设计 c.业务模块设计 2. Node.js端设 ...
- Node.js 中MongoDB的基本接口操作
Node.js 中MongoDB的基本接口操作 连接数据库 安装mongodb模块 导入mongodb模块 调用connect方法 文档的增删改查操作 插入文档 方法: db.collection(& ...
- MongoDB学习(2)—Node.js与MongoDB的基本连接示例
前提 已经安装了node.js和MongoDB,本文使用的node.js是v0.12.0,MongoDB是3.0.0. 初始化数据 启动MongoDB服务,在test数据库中插入一条实例数据: db. ...
- 使用React、Node.js、MongoDB、Socket.IO开发一个角色投票应用的学习过程(三)
这几篇都是我原来首发在 segmentfault 上的地址:https://segmentfault.com/a/1190000005040834 突然想起来我这个博客冷落了好多年了,也该更新一下,呵 ...
- Node.js和MongoDB - MongoJS入门
第一次尝试翻译外国牛人的博文,希望大家喜欢. 本文源码详见:https://github.com/njaulj/mongojs 一点都不夸大的说,近年来node.js和mongodb的确是大放异彩,在 ...
随机推荐
- RabbitMQ 修改密码
C:\Program Files\RabbitMQ Server\rabbitmq_server-3.7.14\sbin> rabbitmqctl.bat change_password adm ...
- go 使用mysql
package main /* 下划线(如:import _ hello/imp)的作用:当导入一个包时,该包下的文件里所有init()函数都会被执行, 然而,有些时候我们并不需要把整个包都导入进来, ...
- 关于matlab2011b 32bit无法成功激活
matlab2011b版本已经很少见了 下载链接:Matlab_R2011B.Win32.iso_免费高速下载|百度网盘-分享无限制 (baidu.com) 解决办法:(参考原博) (43条消息) M ...
- Java基础__03.异常
什么是异常? 异常是指程序运行中出现的各种例外情况,如文件找不到.网络连接失败.传参错误...异常发生在程序运行期间,它影响了正常的程序执行流程. 异常体系结构: 在java中,异常是被当作对象来处理 ...
- Error building Player because scripts had compiler errors
报错信息如下: Error building Player because scripts had compiler errors Build completed with a result of ' ...
- JMeter 三- Run JMeter in non-GUI mode
Run Jmeter in non-GUI mode: 1. Swith to \Jmeter\bin 2. run "jmeter -n -t E:\JmeterforLoadGenesi ...
- Drozer实践之sieve
在模拟器中打开drozer agent 启动连接drozer adb connect 127.0.0.1:xxxxx //adb连接设备,只有模拟器才需要这一步,不同模拟器端口不同 adb forwa ...
- 关于pytorch一些基础知识的备份
压缩conda环境用于备份目的实际上没有意义,因为还有其他方法可以做到这一点,这可能更合适,并使用专为此而设计的内置功能. 您可以创建一个环境.txt版本conda,详细说明其中的每个模块和版本,然后 ...
- ANT+JMETER+Jenkins 接口自动化
Linux环境下搭建:ANT+JMETER+Jenkins 接口自动化 一.准备环境: 1.下载 JDK1.8 JDK下载地址:https://www.oracle.com/java/technolo ...
- No.1.7
网页制作流程 创建根目录(网站的第一级文件夹) 1.图片文件夹:images 2.样式文件夹:CSS 3.首页:index.html <!-- 网站的首页 所有网站的首页都叫index.html ...