KoaHub.js 1.2.2 更新。KoaHub.js 是基于 Koa.js 平台的 Node.js web 快速开发框架。可以直接在项目里使用 ES6/7(Generator Function, Class, Async & Await)等特性,借助 Babel 编译,可稳定运行在 Node.js 环境上。

    【新增】新增支持generator函数

    【修复修复router匹配规则,区分大小写

    【新增】新增async/await,generator,promise版本demo

通过大量的社区调查和实践,我们发现目前中大型服务器后端项目不太适合使用Babel,无法完成定点调试,Babel转义等等问题严重阻碍着我们的工作效率。因此我们提供了3种方式供用户选择,generator => async/await  后期升级成本非常低,基本批量替换就可以完成;promise => async/await 后期升级有一定的成本,相对来说有点麻烦。3种开发方式 async/await 需要babel支持,另外两种不需要babel支持,推荐使用generator版本。

koahub-demo=> demo中主要使用了async/await import/export

export default class extends koahub.controller {

    _initialize() {
        //设置模版主题
        this.state.theme = 'home';
    }

    async index() {
        const context = {version: process.version, time: new Date()};
        const article = await this.model('article').getList({});
        await this.render('index', {context: context, article: article});
    }
}

koahub-demo-generator => demo中主要使用了generator

module.exports = class extends koahub.controller {

    _initialize() {
        //设置模版主题
        this.state.theme = 'home';
    }

    *index() {

        var context = {version: process.version, time: new Date()};
        var article = yield this.model('article').getList({});
        yield this.render('index', {context: context, article: article});
    }
}

koahub-demo-promise => demo中主要使用了promise

module.exports = class extends koahub.controller {

    _initialize() {
        //设置模版主题
        this.state.theme = 'home';
    }

    index() {

        var context = {version: process.version, time: new Date()};
        var that = this;

        return this.model('article').getList({}).then(function (article) {
            return that.render('index', {context: context, article: article});
        });
    }
}


官网:http://js.koahub.com



新闻来源:KoaHub.js 1.2.2 发布,基于 Koa.js 的快速开发框架