新晋小王子 doodoo.js Node.js开发框架
2019独角兽企业重金招聘Python工程师标准>>>
Doodoo.js
Doodoo.js -- 中文最佳实践Node.js Web快速开发框架,支持Koa.js中间件。
//base controller, app/demo/controller/base.js
module.exports = class extends doodoo.Controller {async _initialize() {console.log('base _initialize');}async isLogin() {console.log('base isLogin');}
}//index controller, app/demo/controller/index.js
const base = require('./base');
module.exports = class extends base {async _initialize() {await super._initialize();}async index() {this.success("Hello Doodoo.js");}async index2() {this.fail("Hello Doodoo.js");}
}
环境要求:Node.js >= 7.6.0
特性
- 支持koa全部中间件
- 支持使用 ES6+ 全部特性来开发项目
- 支持断点调试 ES6+ 项目
- 支持多种项目结构和多种项目环境
- 支持 Route, Controller 中使用Koa.js的所有API
- 支持多级 Controller
- 支持模块化开发
- 支持钩子机制
- 支持插件机制
- 支持错误处理
- 支持全局doodoo变量
- 支持Bookshelf, knex链接数据库
- 支持前置,后置操作
- 支持 Restful 设计
- 支持启动自定义
- 支持环境加载配置
- ...
安装
yarn add doodooke/doodoo.js
创建启动文件
// app/index.js启动文件
const Doodoo = require('doodoo.js');// 初始化项目
const app = new Doodoo();// 启动项目
app.start();
方法
ctx上的函数或参数将自动加载到controller,例如支持 this.body = 'Hello World!'
, ctx中具体的API请参考Koa.js, controller中的扩展方法如下。
this.ctx;
this.next;
this.isGet();
this.isPost();
this.isAjax();
this.isPjax();
this.isMethod(method);
this.hook.run(name, ...args);
this.download(file);
this.view(data);
this.success(errmsg: "ok", errcode: 0, data: data);
this.error(errmsg = "error", errcode = 1);
配置
# 应用配置
APP_ROOT=app
APP_PORT=3000
APP_HOST=127.0.0.1# MYSQL数据库链接
MYSQL=true
MYSQL_HOST=127.0.0.1
MYSQL_USER=root
MYSQL_PASSWORD=root
MYSQL_DATABASE=doodoo
MYSQL_PORT=3306
MYSQL_CHARSET=utf8mb4# REDIS链接
REDIS=false
REDIS_HOST=127.0.0.1
REDIS_PORT=6379
REDIS_PREFIX=doodoo:# 静态资源服务
STATIC_DIR=www
STATIC_MAXAGE=30 * 24 * 60 * 60
STATIC_DYNAMIC=true
其他
// 控制器初始化,前置,后置,空操作
async _initialize()
async _before()
async _before_index()
async index()
async _after_index()
async _after()
开始应用
// 下载demo
git clone https://github.com/doodooke/doodoo.js.git
// 安装依赖
yarn install
// 进入项目
cd doodoo.js/example
// 启动项目
node app.js
启动信息
[doodoo] Version: 1.0.1
[doodoo] Website: 127.0.0.1
[doodoo] Nodejs Version: v10.5.0
[doodoo] Nodejs Platform: darwin x64
[doodoo] Server Enviroment: development
[doodoo] Server Startup Time: 212ms
[doodoo] Server Current Time: 2018-08-21 11:17:19
[doodoo] Server Running At: http://127.0.0.1:3000
使用手册
Doodoo.js使用手册
问题反馈
在使用中有任何问题,请使用以下联系方式联系我们
QQ群: 874449168(交流群①)
EMAIL: 786699892@qq.com
Github: https://github.com/doodooke/doodoo.js
官网
多多客Doodooke小程序
转载于:https://my.oschina.net/einsqing/blog/1944646
新晋小王子 doodoo.js Node.js开发框架相关推荐
- 个人服务器搭建(轻便型) vue.js + node.js + mysql + centOs7
个人服务器搭建(轻便型) vue.js + node.js + mysql + centOs7 此笔记有望帮助到他人也自己可回顾学习(如有误望指正) 完成以下四点即可开启web服务 一.创建 vue. ...
- Vue.js+Node.js开发实战:从入门到项目上线
<Vue.js+Node.js开发实战:从入门到项目上线>以JavaScript语言为基础,以一个完整的网站开发过程为主线,介绍了一整套面向Web项目的开发技术,如使用Node.js搭建服 ...
- 准备:新V8即将到来,Node.js的性能正在改变
V8的Turbofan的性能特点将如何对我们优化的方式产生影响 审阅:来自V8团队的Franziska Hinkelmann和Benedikt Meurer. **更新:Node.js 8.3.0已经 ...
- JavaScript新发展 CoffeeScript Dart Rust Node.js
CoffeeScript http://coffeescript.org/ CoffeeScript (GitHub repo) 是一个使用纯Ruby编写的新编程语言,创建者 Jeremy Ashke ...
- 新 V8 即将推出和 Node.js
Node.js 就依赖于 V8 引擎, V8 引擎是由 Google 为 Chrome 浏览器编写的 JavaScript 虚拟机.从一开始,V8 的主要目标就是使 JavaScript 运行更加快速 ...
- 从零到一的react.js+node.js+express.js+mysql产品开发全流程
序言 组长说要使自己对产品在技术层面有一个清晰且足够的了解,最好自己动手开发一个迷你产品,例如todolist,因为公司有提供员工自学使用的服务器,所以我就来试试了,而且一步一步的记录自己的学习过程, ...
- 一统江湖的大前端(2)—— Mock.js + Node.js 如何与后端潇洒分手
<一统江湖的大前端>系列是自己的前端学习笔记,旨在介绍javascript在非网页开发领域的应用案例和发现各类好玩的js库,不定期更新.如果你对前端的理解还是写写页面绑绑事件,那你真的是有 ...
- Vue.js+Node.js+MySQL的前后端+数据库系统结构
前言: 大三暑假回国实习, 经过了1个月时间的培训学习, 本人渐渐熟悉了实习的工作环境和节奏. 由于我所在的前端APP研发部门使用的是Vue.js框架, 因此我在被分配**[公司官方网站的重制]**任 ...
- Vue.js+Node.js全栈开发教程:通过Visual Studio Code开发调试Node应用
目前,有多种开发工具可以支持Node.js应用的开发,比如: jetBrains WebStorm.Eclipse.Visual Studio Code等.这些开发工 具原则上是"条条大路通 ...
最新文章
- Tizen SDK 1.0 Larkspur 安装指南(ubuntu)
- 如何使用facenet
- ubuntu 12.04及12.10无法安装 ia32-libs
- 【方案】0615冰箱运行监测系统资料整理:进展及规划
- unitywebrequest本地加载_Unity AudioSource加载本地.mp3文件/UnityWebRequest
- Jquery对复选框的操作
- 春晚晒出京东“奔富村”成绩单 京东年货节期间累计帮助300万农户户均增收近1700元...
- 二叉树为空意味着二叉树_我是怎么调试出来二叉树的遍历(超精彩配图),从此遍历不再愁了...
- 开源要安全!Linux 基金会、GitHub、GitLab、Google 联合起来了!
- Lecture 6:值函数近似
- Visual Studio 2008系列教程(一):VS 2008安装详解!
- 蚂蚁Java高端培训视频教程-每特学院,蚂蚁课堂
- EMC RS485接口EMC电路设计方案
- 立项 ——VC下,打印机管理和维护
- 树的基本概念及表示方法
- 明尼苏达员工满意度量表包括哪些内容?
- 1.初识elasticsearch
- 基于Winform开发S7.net协议 与Smart-200PLC通讯
- data from cuda to cpu
- c语言内涵教程练习6,C语言内涵教程练习5参考答案.doc
热门文章
- apt gives “Unstable CLI Interface” warning
- POJ 1389 Area of Simple Polygons(扫描线求面积)
- 积木机器人拼装图恐龙图纸_App Store: 机器人积木模型--恐龙积木拼装对战游戏...
- 山西省将率先实现全覆盖社保“一卡通”
- MySQL被黑客攻击勒索5000美元,幸好有备份
- 十张图,看数据分析如何赋能销售
- 逃离北京回家创业--团队组建篇
- Android神笔之Paint
- bios计算机专业术语全称,bios是什么意思 电脑进入bios方法【图文】
- 如何搜集你想要的信息