• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

    koahub: KoaHub.js -- 中文最佳实践Node.js Web快速开发框架。支持Koa.js, Express.js ...

    原作者: [db:作者] 来自: 网络 收藏 邀请

    开源软件名称:

    koahub

    开源软件地址:

    https://gitee.com/koahubjs/koahub

    开源软件介绍:

    wemall商城&koahub商城所有系统将于4月底或5月初开放免费下载,具体请联系客服咨询输入图片说明

    KoaHub.js

    licensetravis-cicodecovDependency Status

    KoaHub.js -- 中文最佳实践Node.js Web快速开发框架。支持Koa.js, Express.js中间件。当前项目已停止维护,推荐使用Doodoo.js

    //base controller, admin/controller/base.controller.jsmodule.exports = class extends koahub.controller {    async _initialize() {        console.log('base _initialize');    }    async isLogin() {        console.log('base isLogin');    }}//index controller, admin/controller/index.controller.jsconst base = require('./base.controller');module.exports = class extends base {    async _initialize() {        await super._initialize();    }    async index() {        this.view(1);    }    async index2() {        this.json(1, 2);    }    async index3() {        await this.render('index');    }}

    环境要求:Node.js >= 7.6.0

    特性

    • 支持koa全部中间件
    • 支持使用 ES6+ 全部特性来开发项目
    • 支持断点调试 ES6+ 项目
    • 支持多种项目结构和多种项目环境
    • 支持 Controller 中使用Koa.js的所有API
    • 支持多级 Controller
    • 支持自动加载
    • 支持钩子机制
    • 支持 Socket.io
    • 支持错误处理
    • 支持全局koahub变量
    • 支持快捷方法
    • 支持修改代码,立即生效
    • 支持前置,后置,空操作
    • 支持禁用控制器方法
    • 支持 Restful 设计
    • 支持 Common 自动加载
    • 支持启动自定义
    • ...

    安装

    npm install koahubjs/koahub --save

    创建启动文件

    // app/index.js启动文件const Koahub = require('koahub');// 初始化项目const app = new Koahub();// 启动项目app.run();

    方法

    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.add(name, action);await this.hook.run(name, ...args);this.download(file);this.view(data);this.json(data, msg, code);this.success(data, msg);this.error(data, msg);await this.action(path, ...args);

    快捷方法

    // app/common.js 函数文件module.exports = {    add(a, b){        return a + b;    }}// 控制器中可以直接通过this.add调用

    快捷中间件

    app.use(async function (ctx, next) {    ctx.model = function() {        // ....    }    await next();});// 控制器中可以直接通过this.model调用

    命令行工具

    KoaHub CLI

    配置

    // app/config/default.config.jsmodule.exports = {    port: 3000,    default_module: 'admin'}//框架默认配置//启动端口port: 3000,//默认模块,控制器,操作default_module: 'home',default_controller: 'index',default_action: 'index',//url后缀url_suffix: '',//自动加载配置loader: {    "controllers": {        root: 'controller',        suffix: '.controller.js',        prefix: '/',    },    "configs": {        root: 'config',        suffix: '.config.js'    },    "middlewares": {        root: 'middleware',        suffix: '.middleware.js'    }}//中间件默认配置//middleware顺序middleware: ['koa-logger'],//http日志'koa-logger': true,//favicon设置'koa-favicon': 'www/favicon.ico',//body配置body: {    multipart: true},//cors配置'koa-cors': false,//session配置'koa-session2': false,//static配置'koa-static-cache': false

    其他

    // 控制器初始化,前置,后置,空操作async _initialize()async _before()async _before_index()async index()async _after_index()async _after()async _empty()// 控制器私有方法// 方法首页字符是`_`为私有方法// 支持restful路由设置// app/config/router.config.jsmodule.exports = [    ['/product', {        get: "/home/product/index"    }],    ['/product/:id', {        get: "/home/product/detail",        post: "/home/product/add",        put: "/home/product/update",        delete: "/home/product/delete",    }]]

    开始应用

    async/await

    // 下载demogit clone https://github.com/koahubjs/koahub-demo.git// 进入项目cd koahub-demo// 安装依赖npm install// 启动项目npm start

    promise

    // 下载demogit clone https://github.com/koahubjs/koahub-demo-promise.git// 进入项目cd koahub-demo-promise// 安装依赖npm install// 启动项目npm start

    generator

    // 下载demogit clone https://github.com/koahubjs/koahub-demo-generator.git// 进入项目cd koahub-demo-generator// 安装依赖npm install// 启动项目npm start

    启动信息

    [2017-05-14 11:48:05] [Koahub] Koahub Version: 2.2.6[2017-05-14 11:48:05] [Koahub] Koahub Website: http://js.koahub.com[2017-05-14 11:48:05] [Koahub] Nodejs Version: v8.0.0[2017-05-14 11:48:05] [Koahub] Nodejs Platform: darwin x64[2017-05-14 11:48:05] [Koahub] Server Enviroment: development[2017-05-14 11:48:05] [Koahub] Server running at: http://127.0.0.1:3000

    使用手册

    KoaHub.js手册

    官网

    KoaHub.js官网


    鲜花

    握手

    雷人

    路过

    鸡蛋
    该文章已有0人参与评论

    请发表评论

    全部评论

    专题导读
    热门推荐
    阅读排行榜

    扫描微信二维码

    查看手机版网站

    随时了解更新最新资讯

    139-2527-9053

    在线客服(服务时间 9:00~18:00)

    在线QQ客服
    地址:深圳市南山区西丽大学城创智工业园
    电邮:jeky_zhao#qq.com
    移动电话:139-2527-9053

    Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap