egg为企业级框架和 Node.js & Koa 应用程序而生
-
Node.js 是一个异步的世界,官方 API 支持的都是 callback 形式的异步编程模型,这会带来许多问题,例如:callback hell: 最臭名昭著的 callback 嵌套问题。release zalgo: 异步函数中可能同步调用 callback 返回数据,带来不一致性。
因此社区提供了各种异步的解决方案,最终胜出的是 Promise,它也内置到了 ECMAScript 2015 中。而在 Promise 的基础上,结合 Generator 提供的切换上下文能力,出现了 co 等第三方类库来让我们用同步写法编写异步代码。同时,async function 这个官方解决方案也于 ECMAScript 2017 中发布,并在 Node.js 8 中实现。
Egg 选择了 Koa 作为其基础框架,在它的模型基础上,进一步对它进行了一些增强。Egg 提供了一个更加强大的插件机制,让这些独立领域的功能模块可以更加容易编写。一个插件可以包含extend:扩展基础对象的上下文,提供各种工具类、属性。middleware:增加一个或多个中间件,提供请求的前置、后置处理逻辑。config:配置各个环境下插件自身的默认配置项。
西南地区IT社群(QQ)
- 云南
- 【昆明网页设计交流吧】243627302
- 【昆明nodejs交流吧】 243626749
- 【VUE】838405306
- 【云南程序员总群】343606807
- 【昆明UI设计】104031254
- 【云南软件外包】15547313
- 贵州
- 【PHP/java源码/站长交流群】55692114
- 四川
- 【成都Java/JavaWeb交流】86669225
- 【vaScript+PHP+MySql】116270060
- 【UI设计/设计交流学习群】135794928
- 重庆
- 【诺基亚 JAVA游戏博物馆】 559479780
- 【PHP,Java,Python,C++接单】 442103442
- 西藏