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 环境上

  1. //base controller, admin/controller/base.controller.js
  2. export default class extends koahub.http{
  3.  
  4. constructor() {
  5. super();
  6. console.log('base constructor');
  7. }
  8.  
  9. isLogin() {
  10. console.log('base isLogin');
  11. }
  12. }
  13.  
  14. //index controller, admin/controller/index.controller.js
  15. import base from "./base.controller";
  16. export default class extends base{
  17.  
  18. constructor() {
  19. super();
  20. console.log('index constructor');
  21. }
  22.  
  23. index() {
  24. super.view(1);
  25. }
  26.  
  27. index2() {
  28. super.json(1,2);
  29. }
  30. }

  

项目中可以使用 ES6/7 里的所有特性,借助 Babel 编译,可以稳定运行在 >=0.12.0 的 Node.js 环境中。

特性

  • 支持koa全部中间件
  • 支持使用 ES2015+ 全部特性来开发项目
  • 支持断点调试 ES2015+ 项目
  • 支持多种项目结构和多种项目环境
  • 支持多级 Controller
  • 支持自动加载
  • 支持钩子机制
  • 支持Socket.io
  • ...

安装

  1. npm install koahubjs --save

  

创建启动文件

  1. // src/index.js启动文件
  2. import Koahub from "koahubjs";
  3.  
  4. //默认app是项目目录
  5. const app = new Koahub();
  6.  
  7. app.getKoa();获取koahubjs实例化,支持自定义koa中间件
  8.  
  9. app.run();

  

目录结构

  1. // 推荐目录结构
  2. app
  3. --addon
  4. --config
  5. --controller
  6. --data
  7. --model
  8. --util
  9. node_modules
  10. src
  11. --addon
  12. --config
  13. --controller
  14. --data
  15. --model
  16. --util
  17. --index.js
  18. package.json

  

配置

  1. // src/config/default.config.js
  2. export default {
  3. port: 3000,
  4. default_module: 'admin'
  5. }
  6.  
  7. 以下为默认配置
  8. //启动端口
  9. port: 3000,
  10.  
  11. //项目目录
  12. app_path: 'app',
  13.  
  14. //默认模块,控制器,操作
  15. default_module: 'home',
  16. default_controller: 'index',
  17. default_action: 'index',
  18.  
  19. //http日志
  20. log_on: true,
  21.  
  22. //favicon设置
  23. favicon: 'www/public/favicon.ico',
  24.  
  25. //自动加载配置
  26. loader: {
  27. "controller": [{
  28. root: 'app/controller',
  29. suffix: '.controller.js',
  30. prefix: '/',
  31. }, {
  32. root: 'app/addon',
  33. suffix: '.controller.js',
  34. prefix: '/addon/',
  35. filter: [/\w*\/controller\//]
  36. }],
  37. "util": [{
  38. root: 'app/util',
  39. suffix: '.util.js'
  40. }, {
  41. root: 'app/addon',
  42. suffix: '.util.js',
  43. filter: [/\w*\/util\//]
  44. }],
  45. "model": [{
  46. root: 'app/model',
  47. suffix: '.model.js'
  48. }, {
  49. root: 'app/addon',
  50. suffix: '.model.js',
  51. filter: [/\w*\/model\//]
  52. }],
  53. "config": [{
  54. root: 'app/config',
  55. suffix: '.config.js'
  56. }, {
  57. root: 'app/addon',
  58. suffix: '.config.js',
  59. filter: [/\w*\/config\//]
  60. }]
  61. }

  

开始应用

  1. npm run compile
  2. npm run start

启动信息:

  1. [Koahubjs] Koahubjs version: 0.1.7
  2. [Koahubjs] Koahubjs website: http://js.koahub.com
  3. [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. Activity的生命周期与加载模式——Activity的4种加载模式

    配置Activity时可指定android:launchMode属性,该属性用于配置该Activity的加载模式,该属性支持如下4个属性值. standard:标准模式,这是默认的加载模式. sing ...

  2. Iframe 自适应高度并实时监控高度变化的js代码

    不得不用到iframe,且被强烈要求不能让它出现滚动条!嵌入的页面肯定是高度不一的,页面中也不能出现大片空白,所以也不能写死高度!真是麻鬼烦啊!google N次 + 百度M次 + 试验了1605次之 ...

  3. Bootstrap入门(七)组件1:字体图标

    Bootstrap入门(七)组件1:字体图标   包括200个来自 Glyphicon Halflings 的字体图标,允许 Bootstrap 免费使用. 部分可用图标截图: 所有图标都需要一个基类 ...

  4. 本地ssh连接到vbox中的linux

    本机是window xp系统, 安装vbox,在vbox下安装linux,想在xp中用ssh连接linux,此时需要配置网络. 1.设置vbox的网络,选择host-only 2.设置window虚拟 ...

  5. KB奇遇记(4):困难重重的选型

    在以往的工作经历中,虽然也会出现公司的一些规章制度,但我鲜少与其打交道,也极少听说.但是来KB这里,突然发现公司居然并没有给我配备电脑!!原因是制度上并没有写IT人员入职需要配备电脑,尔后通过特批流程 ...

  6. Windows 10 IoT Serials 4 - 如何在树莓派上使用Cortana语音助手

    从Windows 10 IoT Core 14986版本开始,微软已经加入Cortana语音助手功能.之前,我们只能使用本地语音识别,需要编写应用程序,下载到设备中才能实现.从现在开始,微软已经从系统 ...

  7. 《JAVASCRIPT高级程序设计》第一章

    在使用调制解调器的时代,频繁的表单验证对客户端来说是一个很大的负担,javascript,作为一种专门进行表单验证的客户端脚本语言诞生了.到今天,javascript早已超越了当初设定的角色.Java ...

  8. jquery 精度计算代码,指定精确小数位

    jquery代码: /** * 将标签的值格式化 * id 标签id * min 最小值 * max 最大值 */ function toFloat(id,min,max){ var htmlVal ...

  9. asp.net 验证码技术

    网站验证码是一种很常用的技术.下面我介绍下技术上是如何实现的. 验证码是一张图片.我们需要在前台代码中写一段<img>,src指向一张页面(ValidateImage.aspx). < ...

  10. <C++Primer>第四版 阅读笔记 第四部分 “面向对象编程与泛型编程”

    继承和动态绑定与数据抽象一起成为面向对象编程的基础. 模板使我们能够编写独立于具体类型的泛型类和泛型函数. 第15章 面向对象编程 面向对象编程基于三个基本概念:数据抽象.继承和动态绑定.在C++中, ...