ThinkJS 2.0 发布 JavaScript 全栈开发框架

  • 徐川

2015 年 11 月 22 日

话题:Node.js语言 & 开发前端

近日,JavaScript MVC 框架ThinkJS发布 2.0 版本,在 1.0 版本的基础上做了大量改进,功能更加全面,具备可扩展性,并且支持 ES 6/7 特性。

ThinkJS 由 360 奇舞团前端工程师李成银(welefen)主导设计和开发,在命名和项目结构上大量借鉴了ThinkPHP这个在国内知名度很高的 PHP 框架。其 1.0 版本在 2014 年 9 月份发布,不过 2.0 版本重新设计了架构并添加了诸多新特性,新的 ThinkJS 旨在让开发 Node.js 项目更加简单、高效。

ThinkJS 2.0 版本的特性包括:

  • 使用 ES6/7 全部特性来开发项目(基于 Babel)
  • 支持多种项目结构和多种项目环境
  • 支持 Mysql,MongoDB,SQLite 等多种数据库
  • 代码自动更新,无需重启 Node 服务
  • 支持 socket.io,SockJS 等多种 WebSocket 库
  • 支持 Memory,File,Db,Redis 等多种 Session
  • 支持 Memory,File,Redis,Memcache 等多种 Cache
  • 支持 ejs,jade,swig,numjucks 等多种模版引擎
  • 支持切面编程,支持 before,after 等多种魔术方法
  • 支持自定义 400,404,500,503 等多种错误页面
  • 支持命令行调用和执行定时任务
  • 丰富的 Hook 和 Middleware
  • 详细的日志,如:请求日志、错误日志、性能日志
  • 支持命令自动创建 REST API
  • 支持国际化和多主题
  • 丰富的测试用例,1500+ 测试用例,代码覆盖率 > 95%

从特性可见,ThinkJS 将多个 Node.js 主流模块进行集成,降低了开发门槛,省去了项目初始配置的麻烦,同时开发者在每个模块都有多个方案可以选择。不过某些深度集成的模块无法被方便的替换,比如 Babel。

类似的 Node.js 框架有SailsMeteor,不过 ThinkJS 是国人研发,更贴近国内的真实需求。

Node.js语言 & 开发前端