最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

koa router 多文件引入的方法示例

 更新時(shí)間:2019年05月22日 10:53:31   作者:乖摸摸頭  
這篇文章主要介紹了koa router 多文件引入的方法示例,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧

背景

koa-router路由越來(lái)越多,api下的router都要使用下面的方式引入,怎么才能方便快捷的將api下的所有文件都引入呢
這次記錄的就是如果將koa-router 一次性循環(huán)引入

const book = require('./app/api/v1/book')
const classic = require('./app/api/v1/classic')
// ...
app.use(book.routes(), book.allowedMethods())
app.use(classic.routes(), classic.allowedMethods())
//...

文件目錄

koa-demo/
 |-api/
  |-books.js
  |-classic.js
  |-users.js
  |-articles.js
 |-package.json
 |-app.js

傳統(tǒng)方式引入router

app.js

const Koa = require('koa')
const app = new Koa()
const book = require('./app/api/v1/book')
const classic = require('./app/api/v1/classic')

app.use(book.routes(), book.allowedMethods())
app.use(classic.routes(), classic.allowedMethods())

app.listen(3333)

require-directory引入

require-directory用來(lái)遞歸地迭代指定的目錄,并返回這些模塊。

github

隨著文件增加,如何高效的開(kāi)發(fā)就是我們要追求的事情了

首先

npm install require-directory

app.js

const Koa = require('koa')
const app = new Koa()
const Router = require('koa-router')
// 使用require-directory加載路由文件夾下的所有router
const requireDirectory = require('require-directory')

// 將所有的路由加載上,自動(dòng)加載代碼
const modules = requireDirectory(module, './api', { visit: whenLoadModule })

function whenLoadModule(obj) {
 if (obj instanceof Router) {
 app.use(obj.routes(), obj.allowedMethods())
 }
}

app.listen(3333)

路由文件就按照傳統(tǒng)的方式寫就行

books.js

const Router = require('koa-router')
const router = new Router()

router.get('/v1/book/latest', (ctx, next) => {
 ctx.body = {
  key: 'book'
 }
})

module.exports = router

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 安裝nvm并使用nvm安裝nodejs及配置環(huán)境變量的全過(guò)程

    安裝nvm并使用nvm安裝nodejs及配置環(huán)境變量的全過(guò)程

    有時(shí)候使用nvm管理node會(huì)發(fā)現(xiàn)無(wú)法使用node或npm,主要原因是環(huán)境變量沒(méi)有配置成功,下面這篇文章主要給大家介紹了關(guān)于安裝nvm并使用nvm安裝nodejs及配置環(huán)境變量的相關(guān)資料,需要的朋友可以參考下
    2023-03-03
  • 基于Express+multer實(shí)現(xiàn)文件上傳功能

    基于Express+multer實(shí)現(xiàn)文件上傳功能

    Multer是Node.js中的一個(gè)第三方包,或者說(shuō)是第三方中間件,主要用于是實(shí)現(xiàn)文件上傳的功能,本文小編講給大家詳細(xì)介紹一下基于Express+multer來(lái)實(shí)現(xiàn)文件上傳功能,文章通過(guò)代碼示例和圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2023-11-11
  • Ubuntu 16.04 64位中搭建Node.js開(kāi)發(fā)環(huán)境教程

    Ubuntu 16.04 64位中搭建Node.js開(kāi)發(fā)環(huán)境教程

    如果想要在Ubuntu 16.04上安裝Node.js的話,這篇文章對(duì)你來(lái)說(shuō)肯定很重要。Node.js從本質(zhì)上來(lái)說(shuō)就是一個(gè)運(yùn)行在服務(wù)端上的封裝好了輸入輸出流的javascript程序。本文給大家詳細(xì)介紹了在Ubuntu 16.04 64位搭建Node.js開(kāi)發(fā)環(huán)境的步驟,有需要的朋友們可以參考學(xué)習(xí)。
    2016-10-10
  • Nodejs 和Session 原理及實(shí)戰(zhàn)技巧小結(jié)

    Nodejs 和Session 原理及實(shí)戰(zhàn)技巧小結(jié)

    這篇文章主要介紹了Nodejs 和Session 原理及實(shí)戰(zhàn)技巧小結(jié),需要的朋友可以參考下
    2017-08-08
  • Node.js 構(gòu)建命令行工具之實(shí)現(xiàn) ls 命令的 -a 和 -l 選項(xiàng)

    Node.js 構(gòu)建命令行工具之實(shí)現(xiàn) ls 命令的 -a 和 

    本文介紹了如何使用Node.js實(shí)現(xiàn)一個(gè)簡(jiǎn)單的命令行工具,模仿常用的ls命令,包括其-a和-l參數(shù)的功能,文章詳細(xì)講解了命令行參數(shù)的解析、文件類型的判斷、權(quán)限信息的處理、文件鏈接數(shù)和修改時(shí)間的格式化等步驟,并提供了完整的代碼實(shí)現(xiàn)
    2024-11-11
  • 淺析node應(yīng)用的timing-attack安全漏洞

    淺析node應(yīng)用的timing-attack安全漏洞

    本篇文章給大家通過(guò)原理的原因分析了node應(yīng)用的timing-attack安全漏洞問(wèn)題,有興趣的朋友閱讀參考下。
    2018-02-02
  • nodejs中使用throw進(jìn)行異常處理的操作方法

    nodejs中使用throw進(jìn)行異常處理的操作方法

    最近在寫一個(gè)nodejs項(xiàng)目時(shí)在思考一個(gè)問(wèn)題: 在方法調(diào)其他方法的過(guò)程中,其他方法是采用return來(lái)返回特定格式的錯(cuò)誤數(shù)據(jù)還是使用throw來(lái)直接拋出錯(cuò)誤?所以本文給大家介紹了nodejs中使用throw進(jìn)行異常處理的操作方法,需要的朋友可以參考下
    2024-12-12
  • benny簡(jiǎn)單框架benchmark功能使用

    benny簡(jiǎn)單框架benchmark功能使用

    這篇文章主要為大家介紹了benny簡(jiǎn)單框架benchmark功能使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-08-08
  • NodeJS加密解密及node-rsa加密解密用法詳解

    NodeJS加密解密及node-rsa加密解密用法詳解

    要用nodejs開(kāi)發(fā)接口,實(shí)現(xiàn)遠(yuǎn)程調(diào)用,如果裸奔太危險(xiǎn)了,就在網(wǎng)上找了一下nodejs的加密,感覺(jué)node-rsa挺不錯(cuò)的,下面來(lái)總結(jié)一下簡(jiǎn)單的rsa加密解密用法,需要的朋友可以參考下
    2018-10-10
  • nodejs 的 session 簡(jiǎn)單使用

    nodejs 的 session 簡(jiǎn)單使用

    session 不用多介紹,使一個(gè)http可以對(duì)應(yīng)一個(gè)終端用戶,需要的朋友可以參考下。
    2016-06-06

最新評(píng)論

双牌县| 永和县| 和田市| 林甸县| 色达县| 吉首市| 泗水县| 乌拉特后旗| 赣榆县| 井冈山市| 临高县| 霞浦县| 集安市| 肥东县| 莆田市| 金塔县| 松滋市| 卫辉市| 泽州县| 广安市| 珲春市| 阿拉善左旗| 宜章县| 砀山县| 神木县| 江油市| 探索| 治县。| 务川| 衡山县| 安西县| 珠海市| 岑巩县| 木里| 高邮市| 柳州市| 德钦县| 柏乡县| 安吉县| 黎川县| 巴东县|