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的确是大放异彩,在 ...
随机推荐
- vi中将小写转换成大写字母
VI阅读模式下连续按gUW可以将小写转换成大写
- zk-复制安装
Zookeeper系列一:Zookeeper介绍.Zookeeper安装配置.ZK Shell的使用 一.Zookeeper介绍 1. 介绍Zookeeper之前先来介绍一下分布式 1.1 分 ...
- 读《高情商修炼手册》有感 output
偶然的一次机遇,遇见了这本书,本着情绪的心态的初衷去阅读,没想到还是挺好读的,此次记录是在读完这本书之后的第二天,受output 1.情商高,意味着控制好自己的情绪,让人相处舒服 在智商过剩的年代,有 ...
- 高CPU Java应用分析
模拟CPU 40%左右 import java.util.concurrent.CountDownLatch; public class Main extends Thread { private C ...
- vs找不到msvcp120d .dll,无法继续执行代码。重新安装可能会解决此问题。
原文链接:https://blog.csdn.net/qq_24537165/article/details/90137317 环境:win10 vs2015 c++ opencv3.4.0 截图: ...
- Linux系统修改静态ip
查看所有网卡 ip信息 ipconfig 修改网卡文件 vim /etc/sysconfig/network-scripts/ifcfg-eno1(网卡名) 新增语句 IPADDR=192.168.1 ...
- R7-1 字符排队
R7-1 字符排队 分数 15 全屏浏览题目 切换布局 作者 颜晖 单位 浙大城市学院 本题要求编写程序,将给定字符串中的字符,按照ASCII码顺序从小到大排序后输出. 输入格式: 输入是一个以回车结 ...
- R6-1 数字金字塔
1 void pyramid(int n) 2 { 3 int i, j; 4 5 for(i = 0;i < n;i++){ 6 for(j = 0;j < n - i - 1;j++) ...
- flink udaf函数
1.Flink-sql自定义UDAF函数 - 简书 (jianshu.com) 2.Flink SQL 自定义UDAF_k_wzzc的博客-CSDN博客_flink udaf 3.Flink 实践教程 ...
- Qt 串口相关配置
QSerialPort M_serialPort; QSerialPortInfo M_SerialPortInfo; void MainWindow::on_M_portNumComboBox_cu ...