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系统

wemall地址:http://www.wemallshop.com
代码地址:http://js.koahub.com/home/feature/koahubjs

KoaHub.js是基于 Koa.js 平台的 Node.js web 快速开发框架的更多相关文章

  1. 基于 Koa.js 平台的 Node.js web 快速开发框架KoaHub.js demo 可安装

    KoaHub.js demo KoaHub.js KoaHub.js -- 基于 Koa.js 平台的 Node.js web 快速开发框架.可以直接在项目里使用 ES6/7(Generator Fu ...

  2. KoaHub.js -- 基于 Koa.js 平台的 Node.js web 快速开发框架之koahub-yilianyun

    koahub-yilianyun 微信易联云打印机接口 koahub-yilianyun易联云打印机node接口 Installation $ npm install koahub-yilianyun ...

  3. KoaHub.js:使用ES6/7特性开发Node.js框架(2)

    介绍   KoaHub.js -- 基于 Koa.js 平台的 Node.js web 快速开发框架.可以直接在项目里使用 ES6/7(Generator Function, Class, Async ...

  4. KoaHub.js:使用ES6/7特性开发Node.js框架

    KoaHub.js -- 基于 Koa.js 平台的 Node.js web 快速开发框架.可以直接在项目里使用 ES6/7(Generator Function, Class, Async & ...

  5. io.js - 兼容 NPM 平台的 Node.js 新分支

    io.js(JavaScript I/O)是兼容 NPM 平台的 Node.js 新分支,由 Node.js 的核心开发者在 Node.js 的基础上,引入更多的 ES6 特性,它的目的是提供更快的和 ...

  6. 深入浅出Node.js(一):什么是Node.js

    Node.js从2009年诞生至今,已经发展了两年有余,其成长的速度有目共睹.从在github的访问量超过Rails,到去年底Node.jsS创始人Ryan Dalh加盟Joyent获得企业资助,再到 ...

  7. 深入浅出Node.js(一):什么是Node.js(转贴)

    以下内容转自:http://www.infoq.com/cn/articles/what-is-nodejs/ 作者:崔康 [编者按]:Node.js从2009年诞生至今,已经发展了两年有余,其成长的 ...

  8. Node.js学习笔记(1):Node.js快速开始

    Node.js学习笔记(1):Node.js快速开始 Node.js的安装 下载 官方网址:https://nodejs.org/en/ 说明: 在Windows上安装时务必选择全部组件,包括勾选Ad ...

  9. KoaHub.js -- 基于 Koa.js 平台的 Node.js web 快速开发框架之koahub-loader

    koahub loader Installation $ npm install koahub-loader Use with koa  // 1.model loader   var model = ...

随机推荐

  1. 验证浏览器是否安装已flash插件的js脚本

    function flashChecker() { var hasFlash = 0; //是否安装了flash var flashVersion = 0; //flash版本 if(document ...

  2. Java线程:线程安全类和Callable与Future(有返回值的线程)

    一.线程安全类 当一个类已经很好的同步以保护它的数据时,这个类就称为线程安全的.当一个集合是安全的,有两个线程在操作同一个集合对象,当第一个线程查询集合非空后,删除集合中所有元素的时候,第二个线程也来 ...

  3. App Store Review Guideline(带翻译)

    1. Terms and conditions(法律与条款) 1.1  As a developer of applications for the App Store you are bound b ...

  4. EasyUI datagrid 删除的时候无法正确找到重复记录row index的问题

    EasyUI datagrid 删除的时候无法正确找到重复记录row index的问题: 如果无法正确找到重复记录的row index,就需要进行注意添加的时候所进行的 操作:如果添加的时候就是添加的 ...

  5. Eclipse Sort Members默认之后恢复的方法

    alt+shift+s -- > m CRLF 默认一种排序之后,对话框就再也出不来了: 使用这样的方法: window - preference - Java | Java dialogs | ...

  6. redis的配置详解

    redis 127.0.0.1:6379> CONFIG GET loglevel 1) "loglevel" 2) "notice" Redis 的配置 ...

  7. 没有苹果电脑打包iOS平台的 Ionic 2程序——《Ionic 2 实例开发》更新内容

    没有苹果电脑打包iOS平台的 Ionic 2程序--<Ionic 2 实例开发>更新内容春节刚过,祝各位新的一年里万事如意,一帆风顺.<Ionic 2 实例开发>在这段时间里更 ...

  8. 《JAVASCRIPT高级程序设计》第五章(2)

    一.Date类型 Date类型类型用于保存日期,有以下几种创建方式: //获取当前时间 var now = new Date(); //获取当前时间的毫秒数 var nowSecond = Date. ...

  9. [css]《css揭秘》学习(三)-灵活的背景定位

    一.background-position属性 使用该属性,在不确定容器大小的情况下,也可以指定图案距离容器边缘的位置:但是需要为不支持该属性的浏览器指定回退方案,否则,图案会默认放在左上角. < ...

  10. http-server 使用介绍

    做一个项目的时候需要服务环境,又不想使用apache,php,于是找到一款比较简单的易用的webserver 就是http-server 首先介绍一个怎么使用吧,http-server 是基于node ...