專注於易用性與速度的Nodejs Web和微服務框架——Adonis

2019-09-26     最美分享Coder

介紹

AdonisJs是一個全棧的Web框架,主要關注易用性和速度。它處理了很多Web開發問題,為你提供了一個乾淨而穩定的API來構建Web應用程式和微服務。依據官方描述,它可以提升開發者的自信,更加易於開發!可以說它是一個專注於開發者身心的框架。



Github

https://github.com/adonisjs/adonis-framework

快速開始



1、全局安裝腳手架

npm i -g @adonisjs/cli

2、創建新的項目

adonis new yardstick

3、進入項目目錄

cd yardstick


4、啟動項目

adonis serve --dev


系統要求

1、框架的唯一依賴項是Node.js和npm.

  • Node.js >= 8.0.0
  • npm >= 3.0.0

你可以使用這樣的工具NVM以幫助同時管理Node.js和NPM的多個版本。

2、目錄結構



  • app

app目錄是應用程式邏輯的主目錄。它是在名稱空間App下自動加載的。

  • config

config目錄用於定義應用程式的配置。AdonisJs附帶了許多配置文件,但您可以隨意創建自己的配置文件。

  • database

database目錄用於存儲所有與資料庫相關的文件。

  • public

用於通過HTTP提供靜態資源。此目錄映射到網站的根目錄:


  • resources

resources目錄用於存儲應用程式的資源目錄,如視圖模板、LESS/SAS文件、未編譯的JavaScript,甚至圖像。

  • start

Start目錄用於存儲在應用程式啟動時加載的文件。默認情況下,會提供app.js、kernel.js和processes.js。

  • test

test目錄用於存儲所有應用程式測試。默認情況下,測試包不包括根據定義的說明安裝它。

下面單獨介紹app目錄:

app/Commands:

這個app/Commands目錄用於存儲所有CLI命令。運行時,將自動創建此目錄。adonis make:command .

app/Controllers:

這個app/Controllers目錄用於存儲所有Http和WebSocket控制員。運行時,將自動創建此目錄。adonis make:controller .

app/Exceptions:

這個app/Exceptions目錄用於存儲全局異常處理程序和所有自定義異常。運行時,將自動創建此目錄。adonis make:ehandler或adonis make:exception .

app/Listeners:

這個app/Listeners目錄用於存儲所有事件偵聽器。運行時,將自動創建此目錄。adonis make:listener .

app/Middleware:

這個app/Middleware目錄用於存儲所有中間件。運行時,將自動創建此目錄。adonis make:middleware .

app/Models:

這個app/Models目錄用於存儲所有模型。運行時,將自動創建此目錄。adonis make:model .

app/Validators:

這個app/Validators目錄用於存儲所有路由驗證器。運行時,將自動創建此目錄。adonis make:validator

3、配置提供

AdonisJs使用config目錄,其中所有文件都在啟動時加載。

const Config = use('Config')
const appSecret = Config.get('app.appSecret')

配置值將使用Config.get,它接受引用窗體中所需鍵的字符串參數。fileName.key,甚至是嵌套的,如下示例:

// 配置文件的示例,例如database.js
{
mysql: {
host: '127.0.0.1',
},
}
// 這樣得到它的值
Config.get('database.mysql.host')

如果不確定配置中是否定義了鍵,則可以提供第二個參數,該參數將作為默認值返回:

Config.get('database.mysql.host', '127.0.0.1')

如果要更改內存中的配置值,請使用Config.set:

Config.set('database.mysql.host', 'db.example.com')


框架提供了開發環境的配置



總結

Adonis是一個不錯的框架,框架的理念是讓開發者找到自信,身心更加健康,詳細的用法和說明文檔,大家可以移步Github和文檔,上面會有詳細的介紹,Enjoy it!



文章來源: https://twgreatdaily.com/mxYXb20BJleJMoPMIsYK.html