KoaHub.js是基于 Koa.js 平台的 Node.js web 快速开发框架
koahubjs
KoaHub.js -- 基于 Koa.js 平台的 Node.js web 快速开发框架。可以直接在项目里使用 ES6/7(Generator Function, Class, Async & Await)等特性,借助 Babel 编译,可稳定运行在 Node.js 环境上。
介绍
KoaHub.js -- 基于 Koa.js 平台的 Node.js web 快速开发框架。可以直接在项目里使用 ES6/7(Generator Function, Class, Async & Await)等特性,借助 Babel 编译,可稳定运行在 Node.js 环境上
//base controller, admin/controller/base.controller.js
export default class extends koahub.http{
constructor() {
super();
console.log('base constructor');
}
isLogin() {
console.log('base isLogin');
}
}
//index controller, admin/controller/index.controller.js
import base from "./base.controller";
export default class extends base{
constructor() {
super();
console.log('index constructor');
}
index() {
super.view(1);
}
index2() {
super.json(1,2);
}
}
项目中可以使用 ES6/7 里的所有特性,借助 Babel 编译,可以稳定运行在 >=0.12.0 的 Node.js 环境中。
特性
- 支持koa全部中间件
- 支持使用 ES2015+ 全部特性来开发项目
- 支持断点调试 ES2015+ 项目
- 支持多种项目结构和多种项目环境
- 支持多级 Controller
- 支持自动加载
- 支持钩子机制
- 支持Socket.io
- ...
安装
npm install koahubjs --save
创建启动文件
// src/index.js启动文件 import Koahub from "koahubjs"; //默认app是项目目录 const app = new Koahub(); app.getKoa();获取koahubjs实例化,支持自定义koa中间件 app.run();
目录结构
// 推荐目录结构 app --addon --config --controller --data --model --util node_modules src --addon --config --controller --data --model --util --index.js package.json
配置
// src/config/default.config.js
export default {
port: 3000,
default_module: 'admin'
}
以下为默认配置
//启动端口
port: 3000,
//项目目录
app_path: 'app',
//默认模块,控制器,操作
default_module: 'home',
default_controller: 'index',
default_action: 'index',
//http日志
log_on: true,
//favicon设置
favicon: 'www/public/favicon.ico',
//自动加载配置
loader: {
"controller": [{
root: 'app/controller',
suffix: '.controller.js',
prefix: '/',
}, {
root: 'app/addon',
suffix: '.controller.js',
prefix: '/addon/',
filter: [/\w*\/controller\//]
}],
"util": [{
root: 'app/util',
suffix: '.util.js'
}, {
root: 'app/addon',
suffix: '.util.js',
filter: [/\w*\/util\//]
}],
"model": [{
root: 'app/model',
suffix: '.model.js'
}, {
root: 'app/addon',
suffix: '.model.js',
filter: [/\w*\/model\//]
}],
"config": [{
root: 'app/config',
suffix: '.config.js'
}, {
root: 'app/addon',
suffix: '.config.js',
filter: [/\w*\/config\//]
}]
}
开始应用
npm run compile npm run start
启动信息:
[Koahubjs] Koahubjs version: 0.1.7 [Koahubjs] Koahubjs website: http://js.koahub.com [Koahubjs] Server running at http://127.0.0.1:3000
wemall 开源微商城 ,微信商城,商城源码,三级分销,微生鲜,微水果,微外卖,微订餐---专业的o2o系统
代码地址:http://js.koahub.com/home/feature/koahubjs

KoaHub.js是基于 Koa.js 平台的 Node.js web 快速开发框架的更多相关文章
- 基于 Koa.js 平台的 Node.js web 快速开发框架KoaHub.js demo 可安装
KoaHub.js demo KoaHub.js KoaHub.js -- 基于 Koa.js 平台的 Node.js web 快速开发框架.可以直接在项目里使用 ES6/7(Generator Fu ...
- KoaHub.js -- 基于 Koa.js 平台的 Node.js web 快速开发框架之koahub-yilianyun
koahub-yilianyun 微信易联云打印机接口 koahub-yilianyun易联云打印机node接口 Installation $ npm install koahub-yilianyun ...
- KoaHub.js:使用ES6/7特性开发Node.js框架(2)
介绍 KoaHub.js -- 基于 Koa.js 平台的 Node.js web 快速开发框架.可以直接在项目里使用 ES6/7(Generator Function, Class, Async ...
- KoaHub.js:使用ES6/7特性开发Node.js框架
KoaHub.js -- 基于 Koa.js 平台的 Node.js web 快速开发框架.可以直接在项目里使用 ES6/7(Generator Function, Class, Async & ...
- io.js - 兼容 NPM 平台的 Node.js 新分支
io.js(JavaScript I/O)是兼容 NPM 平台的 Node.js 新分支,由 Node.js 的核心开发者在 Node.js 的基础上,引入更多的 ES6 特性,它的目的是提供更快的和 ...
- 深入浅出Node.js(一):什么是Node.js
Node.js从2009年诞生至今,已经发展了两年有余,其成长的速度有目共睹.从在github的访问量超过Rails,到去年底Node.jsS创始人Ryan Dalh加盟Joyent获得企业资助,再到 ...
- 深入浅出Node.js(一):什么是Node.js(转贴)
以下内容转自:http://www.infoq.com/cn/articles/what-is-nodejs/ 作者:崔康 [编者按]:Node.js从2009年诞生至今,已经发展了两年有余,其成长的 ...
- Node.js学习笔记(1):Node.js快速开始
Node.js学习笔记(1):Node.js快速开始 Node.js的安装 下载 官方网址:https://nodejs.org/en/ 说明: 在Windows上安装时务必选择全部组件,包括勾选Ad ...
- KoaHub.js -- 基于 Koa.js 平台的 Node.js web 快速开发框架之koahub-loader
koahub loader Installation $ npm install koahub-loader Use with koa // 1.model loader var model = ...
随机推荐
- 验证浏览器是否安装已flash插件的js脚本
function flashChecker() { var hasFlash = 0; //是否安装了flash var flashVersion = 0; //flash版本 if(document ...
- Java线程:线程安全类和Callable与Future(有返回值的线程)
一.线程安全类 当一个类已经很好的同步以保护它的数据时,这个类就称为线程安全的.当一个集合是安全的,有两个线程在操作同一个集合对象,当第一个线程查询集合非空后,删除集合中所有元素的时候,第二个线程也来 ...
- App Store Review Guideline(带翻译)
1. Terms and conditions(法律与条款) 1.1 As a developer of applications for the App Store you are bound b ...
- EasyUI datagrid 删除的时候无法正确找到重复记录row index的问题
EasyUI datagrid 删除的时候无法正确找到重复记录row index的问题: 如果无法正确找到重复记录的row index,就需要进行注意添加的时候所进行的 操作:如果添加的时候就是添加的 ...
- Eclipse Sort Members默认之后恢复的方法
alt+shift+s -- > m CRLF 默认一种排序之后,对话框就再也出不来了: 使用这样的方法: window - preference - Java | Java dialogs | ...
- redis的配置详解
redis 127.0.0.1:6379> CONFIG GET loglevel 1) "loglevel" 2) "notice" Redis 的配置 ...
- 没有苹果电脑打包iOS平台的 Ionic 2程序——《Ionic 2 实例开发》更新内容
没有苹果电脑打包iOS平台的 Ionic 2程序--<Ionic 2 实例开发>更新内容春节刚过,祝各位新的一年里万事如意,一帆风顺.<Ionic 2 实例开发>在这段时间里更 ...
- 《JAVASCRIPT高级程序设计》第五章(2)
一.Date类型 Date类型类型用于保存日期,有以下几种创建方式: //获取当前时间 var now = new Date(); //获取当前时间的毫秒数 var nowSecond = Date. ...
- [css]《css揭秘》学习(三)-灵活的背景定位
一.background-position属性 使用该属性,在不确定容器大小的情况下,也可以指定图案距离容器边缘的位置:但是需要为不支持该属性的浏览器指定回退方案,否则,图案会默认放在左上角. < ...
- http-server 使用介绍
做一个项目的时候需要服务环境,又不想使用apache,php,于是找到一款比较简单的易用的webserver 就是http-server 首先介绍一个怎么使用吧,http-server 是基于node ...