十大node.js的框架 26

Node.js 是一個(gè)基于 Chrome V8 引擎的 JavaScript 運(yùn)行環(huán)境。

Node.js 使用了一個(gè)事件驅(qū)動(dòng)、非阻塞式 I/O 的模型,使其輕量又高效。

Node.js 的包管理器 npm,是全球最大的開源庫生態(tài)系統(tǒng)。

Node.js 系統(tǒng)含有多種不同的結(jié)構(gòu),如 MVC、全棧、REST API 和生成器等。這些結(jié)構(gòu)不僅提升了 Web 應(yīng)用的開發(fā)效率,也優(yōu)化了開發(fā)過程。在這里,我們收集整理了十個(gè)高效的 Node.js 框架,希望對(duì)你有幫助。

Node.js 系統(tǒng)含有多種不同的結(jié)構(gòu),如 MVC、全棧、REST API 和生成器等。這些結(jié)構(gòu)不僅提升了 Web 應(yīng)用的開發(fā)效率,也優(yōu)化了開發(fā)過程。在這里,我們收集整理了十個(gè)高效的 Node.js 框架,希望對(duì)你有幫助。

1、Node.js 開發(fā)框架 Sail.js

Sails.js 就像是 Node.js 平臺(tái)上的 Rails 框架。這是一個(gè)可靠可伸縮的開發(fā)框架,面向服務(wù)的架構(gòu),提供數(shù)據(jù)驅(qū)動(dòng)的 API 集合。用來開發(fā)多玩家游戲、聊天應(yīng)用和實(shí)時(shí)面板引用非常方便,也可用于開發(fā)企業(yè)級(jí) Node.js 應(yīng)用。

Sails.js 基于 Node.js, Connect, Express 和 Socket.io 構(gòu)建。

控制器示例代碼:

module.exports = {hi:function(req, res){returnres.send("Hi there!");? },bye:function(req, res){returnres.redirect("http://www.OSChina.net");? }};

2、Node.js 服務(wù)器端框架 Hapi.js

Hapi.js 是一個(gè)用來構(gòu)建基于 Node.js 的應(yīng)用和服務(wù)的富框架,使得開發(fā)者把重點(diǎn)放在便攜可重用的應(yīng)用邏輯而不是構(gòu)建架構(gòu)。內(nèi)建輸入驗(yàn)證、緩存、認(rèn)證和其他 Web 應(yīng)用開發(fā)常用的功能。

示例代碼:

varHapi =require('hapi');// Create a server with a host and portvarserver =newHapi.Server('localhost',8000);// Add the routeserver.route({method:'GET',path:'/hello',handler:function(request, reply){? ? ? ? reply('hello world');? ? }});// Start the serverserver.start();

3、Node.js 高性能封裝 Express.js

Express 是一個(gè)簡(jiǎn)潔而靈活的 Node.js Web應(yīng)用框架, 提供一系列強(qiáng)大特性幫助你創(chuàng)建各種 Web 應(yīng)用。Express 不對(duì) Node.js 已有的特性進(jìn)行二次抽象,我們只是在它之上擴(kuò)展了 Web 應(yīng)用所需的功能。豐富的 HTTP 工具以及來自 Connect 框架的中間件隨取隨用,創(chuàng)建強(qiáng)健、友好的 API 變得快速又簡(jiǎn)單。

示例代碼:

varexpress =require('express')varapp = express()app.get('/',function(req, res){? res.send('Hello World')})app.listen(3000)

4、Node.js 的 Web 框架 Kraken.js

Kraken 基于 express 構(gòu)建,實(shí)現(xiàn)對(duì)環(huán)境變量的感知、動(dòng)態(tài)配置、高級(jí)中間件和應(yīng)用生命周期的事件通知。

基本使用方法:

'use strict';varexpress =require('express'),? ? kraken =require('kraken-js');varapp = express();app.use(kraken());app.listen(8000);

5、Web 應(yīng)用構(gòu)建平臺(tái) Meteor

Meteor 是一組新的技術(shù)用于構(gòu)建高質(zhì)量的 Web 應(yīng)用,提供很多現(xiàn)成的包,可直接在瀏覽器或者云平臺(tái)中運(yùn)行。

6、全棧 Javascript 開發(fā)架構(gòu) Mean.js

一種全棧 Javascript 開發(fā)架構(gòu),它的名稱來自于:MongoDB,Express,Angular,Node。

使用方法:

$ sudo npm install -gmean-cli$meaninit yourNewApp

7、Node.js 的 Web 框架 Koa.js

Koa 是下一代的 Node.js 的 Web 框架。由 Express 團(tuán)隊(duì)設(shè)計(jì)。旨在提供一個(gè)更小型、更富有表現(xiàn)力、更可靠的 Web 應(yīng)用和 API 的開發(fā)基礎(chǔ)。

Koa可以通過生成器擺脫回調(diào),極大地改進(jìn)錯(cuò)誤處理。Koa核心不綁定任何中間件,但提供了優(yōu)雅的一組可以快速和愉悅地編寫服務(wù)器應(yīng)用的方法。

示例代碼:


8、Node.js CMS 和 Web 應(yīng)用程序平臺(tái) KeystoneJS

KeystoneJS,以 Express 和 MongoDB 為基礎(chǔ)搭建的 Node.js CMS 和 Web 應(yīng)用程序平臺(tái)。

具有以下特性:

Express.js 和 MongoDB:Keystone 會(huì)為你配置 express(node.js 上的 Web 服務(wù)器),用 Mongoose(領(lǐng)先的 ODM 包)連接你的 MongoDB 數(shù)據(jù)庫

動(dòng)態(tài)路由:Keystone 從設(shè)置 MV* 程序的最佳實(shí)踐入手,讓你管理模板、視圖和路由變得更容易

數(shù)據(jù)庫域:ID、String、Boolean、Date 和 Number 是數(shù)據(jù)庫的構(gòu)件。Keystone 以它們?yōu)榛A(chǔ)實(shí)現(xiàn)了在現(xiàn)實(shí)工作中更實(shí)用的域類型,比如 name、email、password、address、image 和 relationship (及其它)

自動(dòng)生成管理員界面:不管你在搭建應(yīng)用程序,或者在生產(chǎn)環(huán)境中作為數(shù)據(jù)庫內(nèi)容管理系統(tǒng)時(shí)是否用它,Keystone 的管理員界面都能節(jié)省你的時(shí)間,讓你管理數(shù)據(jù)更容易

編碼更簡(jiǎn)單:有時(shí)即便做的事情簡(jiǎn)單,異步代碼也會(huì)變得復(fù)雜。Keystone讓簡(jiǎn)單的事情(比如在視圖中顯示之前加載數(shù)據(jù))保持簡(jiǎn)單

表單處理:要驗(yàn)證表單、上次圖片或用一行代碼更新數(shù)據(jù)庫?基于你已經(jīng)定義的數(shù)據(jù)模型,Keystone 可以做到

會(huì)話管理:Keystone 自帶了會(huì)話管理和認(rèn)證功能,包括密碼域的自動(dòng)加密

發(fā)送 Email:借助 Keystone,你的應(yīng)用程序可以輕松地設(shè)置、預(yù)覽和發(fā)送基于模板的 email。它還集成了 Mandrill (Mailchimp 卓越的事務(wù)性 email 發(fā)送服務(wù))

9、Node.js 框架組件 flatiron.js

flatiron 是一款 Node.js 和瀏覽器的框架組件,是一款構(gòu)建現(xiàn)代化 web 應(yīng)用適應(yīng)性很強(qiáng)的框架。flatiron 提供比 Rails 類組件有更豐富配置的框架組件,允許開發(fā)者自己添加他們想要的功能組件。

10、基于 Node.js 的 API 框架 LoopBack

LoopBack 是基于 Node.js 的一個(gè)開源的 API 框架,可以讓 Node.js 應(yīng)用方便的跟各種設(shè)備通過 API 進(jìn)行互聯(lián)。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容