EggBorn.jsJavascript 全栈开发框架

联合创作 · 2023-09-20 05:15

EggBorn.js 是什么

EggBorn.js是一款顶级Javascript全栈开发框架。

EggBorn.js是采用Javascript进行全栈开发的最佳实践。 EggBorn.js不重复造轮子,而是采用业界最新的开源技术,进行全栈开发的最佳组合。 EggBorn.js前端采用Vue.js + Framework7 / Vue Router + Webpack,后端采用Koa.js + Egg.js,数据库采用mysql。 EggBorn.js时刻跟踪开源技术的最新成果,并持续优化,使整个框架时刻保持最佳状态。

EggBorn.js 重点解决什么问题:业务模块化

Javascript技术的蓬勃发展,为前后端开发带来了更顺畅的体验,显著提升了开发效率。但仍有网友质疑Javascript能否胜任大型Web应用的开发。大型Web应用的特点是随着业务的增长,需要开发大量的页面组件。面对这种场景,一般有两种解决方案:

1 采用单页面的构建方式,缺点是产生的部署包很大。

2 采用页面异步加载方式,缺点是页面过于零散,需要频繁与后端交互。

EggBorn.js实现了第三种解决方案:

3 页面组件按业务需求归类,进行模块化,并且实现了模块的异步加载机制,从而弥合了前两种解决方案的缺点,完美满足大型Web应用业务持续增长的需求。

EggBorn.js 的技术特点

  • 业务模块化:页面组件按模块组织

  • 加载方式灵活:模块既可异步加载,也可同步加载

  • 模块高度内聚:模块包括前端页面组件和后端业务逻辑

  • 参数配置灵活:模块中的前后端可以单独进行参数配置

  • 国际化:模块中的前后端均支持独立的国际化

  • 模块隔离:模块的页面、数据、逻辑、路由、配置等元素均进行了命名空间隔离处理,避免模块之间的变量污染与冲突

  • 超级易用的事务处理:只需在路由记录上配置一个参数,即可完美实现数据库的事务处理。

  • 渐进式开发:由于模块的高度内聚,可以将业务以模块的形式沉淀,在多个项目中重复使用,既可贡献到npm开源社区,也可部署到公司内部私有npm仓库。

有了EggBorn.js,从此可复用的不仅仅是组件,还有业务模块。

快速上手

安装EggBorn.js脚手架

$ npm install -g egg-born

新建项目

$ egg-born project_name
$ cd project_name
$ npm install

EggBorn.js目前提供了2个项目脚手架,分别是

  • front-backend-mysql – 前后端全栈项目模板

  • front – 前端项目模板,后端可采用其他方案

配置mysql连接参数

如果采用了`front-backend-mysql`模板,请配置mysql连接参数(空数据库即可)

编辑src/backend/config/config.default.js文件

  // mysql
  config.mysql = {
    clients: {
      // donot change the name  
      __ebdb: {
        host: '127.0.0.1',
        port: '3306',
        user: 'travis',
        password: '',
        database: 'egg-born',
      },
    },
  };

运行项目

启动后端服务

$ npm run dev:backend

启动前端服务

$ npm run dev:front

EggBorn.js架构图

系统架构

EggBornJS.png

项目文件结构

structure.png

模块文件结构

privatemodule.png

publicmodule.png

浏览 10
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报