0.0.1 • Published 3 years ago
koa-router-dynamic v0.0.1
koa-router-dynamic
A patch for @koa/router.
- Search routes by path(s)
- Search routes by custom handler
- Remove routes without restarting the process
Installation
# npm ..
npm i koa-router-dynamic
# yarn ..
yarn add koa-router-dynamic
Usage
router.searchRoutesByPath(path) ⇒ Array.<Layer>
Search routes in the stack by path(s).
Kind: instance method of Router
Param | Type | Description |
---|---|---|
path | String | Array.<String> | Path string(Array). |
Example
const Koa = require('koa');
const Router = require('@koa/router');
require('koa-router-dynamic');
const app = new Koa();
const router = new Router();
router.get("/example/:id", ctx => {
ctx.body = "test";
})
app.use(router.routes());
console.log(router.searchRoutesByPath("/example/:id"));
router.searchRoutes(handler) ⇒ Array.<Layer>
Search routes in the stack by custom handler.
Kind: instance method of Router
Param | Type | Description |
---|---|---|
handler | function | Handler function. |
Example
const Koa = require('koa');
const Router = require('@koa/router');
require('koa-router-dynamic');
const app = new Koa();
const router = new Router();
router.get("/example/:id", ctx => {
ctx.body = "test";
})
app.use(router.routes());
console.log(router.searchRoutes(layer => layer.path === "/example/:id"));
router.removeAllRoutes() ⇒ Router
Remove all routes in the stack.
Kind: instance method of Router Example
const Koa = require('koa');
const Router = require('@koa/router');
require('koa-router-dynamic');
const app = new Koa();
const router = new Router();
router.get("/example/:id", ctx => {
ctx.body = "test";
})
app.use(router.routes());
router.removeAllRoutes();
router.removeRoutes(layers) ⇒ Router
Remove routes in the stack.
Kind: instance method of Router
Param | Type | Description |
---|---|---|
layers | Layer | Array.<Layer> | layers to remove. |
Example
const Koa = require('koa');
const Router = require('@koa/router');
require('koa-router-dynamic');
const app = new Koa();
const router = new Router();
router.get("/example/:id", ctx => {
ctx.body = "test";
})
app.use(router.routes());
let routesToRemove = router.searchRoutes(layer => layer.path === "/example/:id");
router.removeRoutes(routesToRemove);
Contributing
Please submit all issues and pull requests to the daidr/koa-router-dynamic repository!
Support
If you have any problem or suggestion please open an issue here.
License
0.0.1
3 years ago